Hi everyone,
I'm trying to implement the SPL falcon mode on an embedded board based on
the IMX6 SoC. I have succeeded recently in implementing it for a legacy
Image and now i'm trying to implement it for a fitImage... after setting
the appropriate configs, when I try now to boot with a fitImage (packaging
the kernel+initramfs+dtbs), I started getting the error "Bad FIT standalone
image format!" :

...
## Loading standalone from FIT Image at 177fffc0 ...
Wrong FIT format: no description
Bad FIT standalone image format!
Raw boot image support not enabled, proceeding to other boot methods
spl: ext: failed to parse image header
spl_load_image_ext: error reading image fitImage, err - -22
...

Now If I double-check the content of the fitImage (compared to my source
.its) with "mkimage -l" or "iminfo" on u-boot, I can see that every node
contains the "description" property as requested by the SPL, and if I use
the same fitImage with u-boot, everything works as expected.. the bootm
routine recognizes the fitimage and parses its content correctly.

So, the problem apparently is not with the fitImage but with the SPL and
the way it is handling it.

To enable FIT support for u-boot and the SPL I'm setting the following
configs:
CONFIG_FIT=y
CONFIG_SPL_FIT=y
CONFIG_SPL_LOAD_FIT_FULL=y

When analyzing the issue, I found out that the SPL and u-boot are using the
same functions (for handling the fitImage) from image-fit.c and the same
library lib/libfdt. So I wonder what can go wrong inside the SPL to give
such output ?

Also, I noticed that there is a second config by the name
CONFIG_SPL_LOAD_FIT and I would like to know what is the addition in using
CONFIG_SPL_LOAD_FIT_FULL instead ?
(for me, only the second one is supported, as I'm loading the fitImage and
the SPL args from an EXT4 partition. There is no implementation for
CONFIG_SPL_LOAD_FIT in spl-ext.c)

I would really appreciate your help !
Thank you in advance
--
Abder

Reply via email to