Porting the 2.6.38 linux kernel to ARM11 MPcore
Catalin Marinas
catalin.marinas at arm.com
Wed Nov 23 09:32:31 EST 2011
On Wed, Nov 23, 2011 at 02:14:06PM +0000, Molnár Gábor wrote:
> > Does your physical RAM start at 0xc0000000 and it is all ignored?
> > Setting highmem would fix as all your lowmem (including the kernel
> > code) would be unmapped, hence the fault. What's the VMALLOC_END
> > defined to?
>
> #define VMALLOC_END 0xf8000000
>
> For the platform i use. The size of vmalloc is the default (128MB).
>
> If HIGHMEM is not set, this area is executed:
>
> >/*
> >792 * Check whether this memory bank would entirely overlap
> >793 * the vmalloc area.
> >794 */
> >795 if (__va(bank->start) >= vmalloc_min ||
> >796 __va(bank->start) < (void *)PAGE_OFFSET) {
> >797 printk(KERN_NOTICE "Ignoring RAM at %.8lx-%.8lx "
> >798 "(vmalloc region overlap).\n",
> >799 bank->start, bank->start + bank->size - 1);
> >800 continue;
> >801 }
>
> static void * __initdata vmalloc_min = (void *)(VMALLOC_END - SZ_128M);
>
> The kernel is loaded on the phisical address: 0xc0000000-0xc05000000.
> (This region is given as atag_mem as well).
>
> At the current configuration i believe vmalloc should be at
> 0xF0000000-0xF8000000.
>
> Why does this overlap with 0xC0000000-0xC0500000?
So it doesn't, in which case you may want to place some printk's in the
kernel around the message reporting that your block of RAM is ignored.
--
Catalin
More information about the linux-arm-kernel
mailing list