Dear Richard Retanubun,

In message <[EMAIL PROTECTED]> you wrote:
> 
> I am trying to limit the amount of memory needed to load and boot a linux 
> kernel (2.6.26)
> to do this I loaded my fdt at address 0x20_0000 and uImage at 0x_30_0000
> 
> When I run bootm, I both the kernel and fdt passed their checksum tests, and 
> then I got this error.
> ERROR: image is not a fdt - must RESET the board to recover.

...so the uncompressed Linux kernel image was written on top of your
FDT image, corrupting it.

> However, if I loaded my fdt at address 0x40_0000 and uImage at 0x50_0000, 
> bootm works fine.

Makes sense.

> Is there a reason why fdt must be loaded at a specific offset from the start 
> of RAM?

Yes, there is - you need free space to load  the  uncompressed  Linux
kernel to low memory.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED]
Dealing with failure is easy: work hard to improve. Success  is  also
easy  to  handle:  you've  solved  the  wrong  problem.  Work hard to
improve.
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to