aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2024-02-10 20:59:28 +0100
committerHelge Deller <deller@gmx.de>2024-04-02 14:22:45 +0200
commitf4e57acfc592ff6f93409450e8ff1869a48368fc (patch)
tree600da9a320c1e21a102dde6b69ee23f65bbac8a5
parent5f2410a9f6a17dedb558a1ebe8eeed0f30d4cfa8 (diff)
downloadseabios-hppa-f4e57acfc592ff6f93409450e8ff1869a48368fc.zip
seabios-hppa-f4e57acfc592ff6f93409450e8ff1869a48368fc.tar.gz
seabios-hppa-f4e57acfc592ff6f93409450e8ff1869a48368fc.tar.bz2
parisc: HP-UX saves number of RAM pages in PAGE0 at 0x33c
This fixes one glitch when trying to start up 64-bit HP-UX 11. Signed-off-by: Helge Deller <deller@gmx.de> Noticed-by: Sven Schnelle <svens@stackframe.org>
-rw-r--r--src/parisc/parisc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/parisc/parisc.c b/src/parisc/parisc.c
index 8c6d0cd..862fd6f 100644
--- a/src/parisc/parisc.c
+++ b/src/parisc/parisc.c
@@ -3212,6 +3212,10 @@ void __VISIBLE start_parisc_firmware(void)
memcpy((void*)MEM_PDC_ENTRY, &pdc_entry_table, i);
flush_data_cache((char*)MEM_PDC_ENTRY, i);
+ if (is_64bit_PDC()) {
+ /* HP-UX 11 checks RAM in rminit() from this address */
+ *(unsigned int *) 0x33c = ram_size >> 12; /* # of pages */
+ }
PAGE0->memc_cont = ram_size;
PAGE0->memc_phsize = ram_size;
PAGE0->memc_adsize = ram_size;