
On Sat, Jan 09, 2016 at 01:12:33AM +0900, Masahiro Yamada wrote:
Hi Tom,
2016-01-05 4:59 GMT+09:00 Tom Rini trini@konsulko.com:
On Thu, Dec 17, 2015 at 05:19:35PM +0900, Masahiro Yamada wrote:
To boot Linux, we should prevent Initramdisk and FDT from going too high.
OK, why? I could be entirely wrong here but I had thought for some reason that if the ramdisk was in "highmem" the kernel would relocate contents (or if compressed, uncompress to a non-highmem location). The FDT must be in lowmem as that tells the kernel where memory even is. Is this not the case? Thanks!
Just in case, I asked this in the kernel ML.
See this thread: https://lkml.org/lkml/2016/1/8/169
Jon gave me the answer.
- Load initramfs.
Existing boot loaders: OPTIONAL New boot loaders: OPTIONAL
If an initramfs is in use then, as with the dtb, it must be placed in a region of memory where the kernel decompressor will not overwrite it while also with the region which will be covered by the kernel's low-memory mapping.
A safe location is just above the device tree blob which itself will be loaded just above the 128MiB boundary from the start of RAM as recommended above.
Which explains why I picked the regions I picked for ti_armv7_common.h that I did. So, OK, thanks! I'll apply this patch shortly.