1

In beagle board bring up we use this specific address below to load up uImage and dtb?

loaduImage=fatload mmc 0:1 0x80007fc0 uImage

loadfdt=fatload mmc 0:1 ${dtaddr} omap3-beagle-xm.dtb

Why can't we use some other address? It is pointed out in the data sheet of beagle board xm that DRAM address in beagle board starts from 0x80000000 so why not choose any address?

Why can't we load up uImage at some address and after 128MB load up dtb as suggested in https://www.kernel.org/doc/Documentation/arm/Booting documentation.

Quoting from the link: A safe location is just above the 128MiB boundary from start of RAM.

noman pouigt
  • 906
  • 11
  • 25
  • 1
    Your title doesn't match the text. The title seems to refer to where U-Boot is loaded, whereas the text asks about the uImage and FDT blob. FWIW placing the uImage at 0x80007fc0 is not a good idea. Yes, that places the zimage at a nice address (i.e. 0x80008000). But that is the kernel's start address, and the zImage still has to be *decompressed*, which is why Russel King recommends that the zImage should be loaded ***above*** 0x8000 *"in order to avoid the need to relocate prior to decompression, which will make the boot process slightly faster."* – sawdust Sep 03 '15 at 10:32

1 Answers1

0

Header is 0x40, so kernel ends up in 0x80008000, a 4k page boundry. 0x80008000 is just convention and if you want you can change the address but you need to modify kernel code accordingly.

http://processors.wiki.ti.com/index.php/HOWTO_Change_the_Linux_Kernel_Start_Address

auselen
  • 27,577
  • 7
  • 73
  • 114