[PATCH 07/26] arm: imx: Check header before calling spl_load_imx_container

Sean Anderson seanga2 at gmail.com
Fri Oct 13 03:39:22 CEST 2023


On 10/12/23 12:40, Tom Rini wrote:
> On Wed, Oct 11, 2023 at 09:56:07PM -0400, Sean Anderson wrote:
>> Make sure we have an IMX header before calling spl_load_imx_container,
>> since if we don't it will fail with -ENOENT. This allows us to fall back to
>> legacy/raw images if they are also enabled.
>>
>> To avoid too much bloat, Legacy/Raw images are disabled for the four
>> configs which only boot from raw MMC.
>>
>> Future work could include merging imx_container.h with imx8image.h, since
>> they appear to define mostly the same structures.
>>
>> Signed-off-by: Sean Anderson <seanga2 at gmail.com>
> 
> So, since you mention bloat, this sounds like it's making functional
> changes here, but that's not intentional, yes?  Or to ask another way,
> is deneb disabling features here, to save space now that it can, or
> because they're growing "a bunch" and this reduces the growth?
> 

This is a functional change, one which likely should have been in place from
the start, but a functional change nonetheless. Previously, all non-IMX8 images
(except FITs without FIT_FULL) would be optimized out if the only image load
method supported IMX8 images. With this change, support for these image types
now has an effect.

There are seven boards with SPL_LOAD_IMX_CONTAINER enabled:

imx93_11x11_evk_ld imx8qm_mek imx8qxp_mek giedi imx93_11x11_evk imx8ulp_evk deneb

All of these boards also have SPL_RAW_IMAGE_SUPPORT and SPL_LEGACY_IMAGE_FORMAT
enabled as well. However, none have FIT support enabled. Of the six load methods
affected by this patch, only SPL_MMC and SPL_BOOTROM_SUPPORT are enabled with
SPL_LOAD_IMX_CONTAINER. spl_romapi_load_image_seekable does not support legacy
or raw images, so there is no growth. However, mmc_load_image_raw_sector does
support loading legacy/raw images. Since these images could not have been booted
before, I have disabled support for legacy/raw images on these four boards. This
reduces bloat from around 800 bytes to around 200.

--Sean


More information about the U-Boot mailing list