[PATCH v2 0/4] sunxi: SPL FIT support for 32-bit sunxi SoCs

Samuel Holland samuel at sholland.org
Sun Jan 22 22:15:26 CET 2023


This series makes the necessary changes so 32-bit sunxi SoCs can load
additional device trees or firmware from SPL along with U-Boot proper.
Crust (SCP firmware) has support for A33 and H3, and H3 also needs to
load an eGon blob to support CPU 0 hotplug (a silicon bug workaround).

FIT unlocks more features (signatures, multiple DTBs, etc.), so enable
it by default. A10 (sun4i) only has 24 KiB of SRAM A1, so it needs
SPL_FIT_IMAGE_TINY. For consistency, enable that option everywhere.

This series depends on the bugfix series I sent yesterday[1].

After this series is applied, we can increase SPL_MAX_SIZE for H6 and
newer SoCs, both 32-bit (e.g. A50, T113) and 64-bit. I did not do that
yet because there is some discussion to be had about the correct value:
it must be adjusted to guarantee return-to-FEL functionality, and the
exact adjustment depends on the sunxi-fel tool implementation.

[1]: https://lore.kernel.org/u-boot/20230121232518.49723-1-samuel@sholland.org/

Changes in v2:
 - Disable padding from SPL_PAD_TO
 - Rely on binman min-size instead of using explicit offsets
 - Use Kconfig for firmware addresses instead of an #ifdef staircase

Samuel Holland (4):
  sunxi: spl: Disable padding from SPL_PAD_TO
  sunxi: binman: Move BL31 and SCP firmware addresses to Kconfig
  sunxi: binman: Support FIT generation for 32-bit SoCs
  sunxi: Enable SPL FIT loading for 32-bit SoCs

 arch/arm/Kconfig               |  1 +
 arch/arm/dts/sunxi-u-boot.dtsi | 39 ++++++++++++++++++----------------
 arch/arm/mach-sunxi/Kconfig    | 17 +++++++++++++++
 common/spl/Kconfig             |  6 ++----
 4 files changed, 41 insertions(+), 22 deletions(-)

-- 
2.37.4



More information about the U-Boot mailing list