On Mon, May 01, 2006 at 11:05:01AM +0000, David J. Singer wrote:
On Monday 01 May 2006 09:52, Jonathan McDowell wrote:
Generally you use pbltool to load whatever kernel image you've made to 0x11d00000. You then do "bootm 11d00000" in u-boot, which relocates the kernel to the appropriate kernel load address and executes it. As such there are 2 "load addresses"; one for where pbltool loads the kernel and one for where u-boot loads it to. Which are you talking about?
Good question! I think the essence of the problem is that I don't really know! :)
I observed that, once the kernel had compiled, it told me the load address was 0x10008000 thus:
Image Name: Linux-2.6.16-omap2 Created: Mon May 1 10:59:33 2006 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1478848 Bytes = 1444.19 kB = 1.41 MB Load Address: 0x10008000 Entry Point: 0x10008000 Image arch/arm/boot/uImage is ready
I assumed I needed to adjust the load address in the .pbl config accordingly:
write 0x10008000 uImage-2.6.16-omap2 write 0x11c00000 rootfs.arm.ext2-djs.gz write 0x11f00000 u-boot.bin exec 0x11f00000
then just do:
bootm 10008000
But that's obviously wrong! I've done something silly, haven't I.... :)
Sort of. The .pbl file should stay as 0x11d00000 and you should "bootm 11d00000". The kernel load of 0x10008000 gets written into the uImage file so u-boot knows that's where the kernel needs to finally end up.
J.