[PATCH 12/13] ARM: LPC32XX: architecture header files
Russell King - ARM Linux
linux at arm.linux.org.uk
Wed Feb 3 16:34:59 EST 2010
On Wed, Feb 03, 2010 at 08:20:01PM +0100, Kevin Wells wrote:
> >
> > > +#define VMALLOC_END (PAGE_OFFSET + 0x10000000)
> > grepping shows that defining VMALLOC_END based on PAGE_OFFSET is usual,
> > but I wonder why you don't just
>
> The maximum addressable DRAM sizing is 256MB when fully populated. It seemed
> the right size. 0xF0000000 works too though, I have no problems changing it.
Well, what you have is:
VMALLOC_END
...
VMALLOC_START
8MB hole
high_memory
Direct mapped RAM
PAGE_OFFSET
So, if your maximal DRAM size is 256MB, then if you install that amount
(ignoring things like highmem support, which you should have disabled)
high_memory = PAGE_OFFSET + 256MB, or PAGE_OFFSET + 0x10000000.
That makes VMALLOC_START = PAGE_OFFSET + 0x10800000, which will be
above VMALLOC_END !
What actually happens is that the kernel (by default) enforces a 128MB
VMALLOC area, which, given your VMALLOC_END value will give you a
maximum of 120MB of SDRAM - if you check your boot log, you probably
have some message like:
"Truncating RAM at ..."
More information about the linux-arm-kernel
mailing list