On Fri, Jul 23, 2004 at 01:51:34PM +0200, Maciej W. Rozycki wrote: > > Can a 32-bit mips kernel access beyond KSEG0 contiguously? I have a Sibyte > > 1250 with 1 Gig RAM, but only 256 MB is located at phyical 0x0. The rest is > > all located at 0x8000_0000. Does that mean the kernel can access only 256 > > meg contiguously? Do I need to enabled CONFIG_HIGHMEM to even reach the > > remaining RAM? It appears Highmem gives me only a 4 meg window at a time. > > The BCM1250A is a 64-bit processor. What's the problem with using 64-bit > Linux avoiding the hassle altogether? There is a general perception among Linux users that 64-bit is new an not really needed which in part I blame on the bs Intel is spreading to hide the fact that for a long time they simply had no 64-bit roadmap at all. > > Can't I set up a page mapping into KSEG2 for the rest of the memory? KSEG2 > > seems to be unused from what I read. > > KSEG2 is used for modules. There are still improvments to be made for BCM1250 support. Somebody thought scattering the first 1GB of memory through the lowest 4GB of physical address space like a three year old his toys over the floor was a good thing ... The resulting holes in the memory map are wasting significant amounts of memory for unused memory; the worst case number that is reached for 64-bit kernel on a system with > 1GB of RAM is 96MB! > > Can't I set up a page mapping into KSEG2 for the rest of the memory? KSEG2 > > seems to be unused from what I read. > > KSEG2 is used for modules. Right. A part of KSEG2 could be used for mapping more low-memory but that's only really an interesting option for 32-bit processors and would only raise the theoretical limit from 512MB (256 on BCM1250) to somewhat less than 1.5GB (BCM1250: 1.25GB) at the cost of address space for vmalloc & ioremap. It's a pretty pointless exercise when there are still terabytes of unmapped 64-bit address space available. Ralf