diff options
-rw-r--r-- | sys/mips/conf/SWARM | 6 | ||||
-rw-r--r-- | sys/mips/sibyte/sb_machdep.c | 11 |
2 files changed, 11 insertions, 6 deletions
diff --git a/sys/mips/conf/SWARM b/sys/mips/conf/SWARM index 3189bcb..041c94d 100644 --- a/sys/mips/conf/SWARM +++ b/sys/mips/conf/SWARM @@ -8,12 +8,6 @@ options CPU_SB1 files "../sibyte/files.sibyte" hints "SWARM.hints" -# -# 32-bit kernel cannot deal with physical memory beyond 4GB -# XXX pmap assumes that all the memory can be mapped using KSEG0 -# -options MAXMEM=512*1024 - options CFE options CFE_CONSOLE options CFE_ENV diff --git a/sys/mips/sibyte/sb_machdep.c b/sys/mips/sibyte/sb_machdep.c index dca2869..559bf74 100644 --- a/sys/mips/sibyte/sb_machdep.c +++ b/sys/mips/sibyte/sb_machdep.c @@ -158,6 +158,17 @@ mips_init(void) TUNABLE_INT_FETCH("hw.physmem", &tmp); maxmem = (uint64_t)tmp * 1024; + /* + * XXX + * If we used vm_paddr_t consistently in pmap, etc., we could + * use 64-bit page numbers on !n64 systems, too, like i386 + * does with PAE. + */ +#if !defined(__mips_n64) + if (maxmem == 0 || maxmem > 0xffffffff) + maxmem = 0xffffffff; +#endif + #ifdef CFE /* * Query DRAM memory map from CFE. |