RE: Réf. : Re: starting RAM adress for linux kernel

From: Steven Blakeslee <hidden>
Date: 2005-06-03 15:06:33

=20
we need to have the start of Ram at 0x0300 0000 because we=20
use the command mem=3D40M (for uboot) to force Linux in the low=20
part of memory and to reserve the high part of memory (218M=20
exactly ) for ioremap (for our application) but we keep the=20
same flash mapping (to avoid more problems).
So how can we do that ? The boot seems OK but there is some=20
problems in Kernel after uncompressing the kernel image.
Is the only solution is to inverse the mapping with Ram from=20
0 to 258M and the flash above ?
RAM should always start at address 0x0 in your chip select mapping.  =
When you pass mem=3D40M Linux will claim
RAM from 0x0 to 0x02800000.  The rest of the RAM, 0x02800000 to the end =
will be available for ioremap.  The reason your kernel does nothing =
after being uncompressed is because it has no idea where it is and =
probably is not being uncompressed to a valid RAM address.

The sensible place to map FLASH is the end of memory, or anywhere out of =
the way.  I assume you are low booting and that is why you think FLASH =
needs to be at the beginning of memory.  It does not, even though that =
is where you boot from you can remap the FLASH.

=20
Finally, will Busybox work with Ram starting at 0x03000000 ?
Busy box is part of your ramdisk, it does not know anything about the =
memory map.  If your kernel does not get past uncompressing then you did =
not get anywhere near busy box running.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help