[U-Boot] U-Boot FIT images with ramdisk

Ira W. Snyder iws at ovro.caltech.edu
Thu Nov 5 00:14:50 CET 2009


Hello,

I've just started testing U-Boot's FIT image support on a MPC8349EMDS
board. I'm using an .its file based on multi.its. It has a single
kernel, ramdisk, and fdt.

I've noticed that if I do not specify a load address for the ramdisk,
bootm will fail, with the messages:

Can't get ramdisk subimage load address!
Ramdisk image is corrupt or invalid

If I add "load = <0x0>;" to the ramdisk section of my .its file, rebuild
the image, and try again, then the ramdisk loads correctly and the
system boots. The address doesn't seem to matter much: using 0x1000000
is ok as well.

The documentation in doc/uImage.FIT/source_file_format.txt claims that
"load" is only mandatory for types "standalone" and "kernel".

The reason for the error can be traced down to common/image.c line 928.
The rd_load variable (the load address) seems only to be used on a few
boards, directly below.

Should the if-statement at line 928 be wrapped in the same "#if defined"
block? Or am I just lucky in that my ramdisk image isn't overwriting
something vital?

Thanks,
Ira


More information about the U-Boot mailing list