[PATCH 0/5] Fix FIT hash algos in SPL (Fixes v2021.10-rc2)

Alexandru Gagniuc mr.nuke.me at gmail.com
Tue Aug 24 02:53:15 CEST 2021


Simon and I recently worked on killing a bunch extra definitions. One
of the side-effects is that certain hash algorithms won't work in SPL
when used in the context of FIT verification.

For example, in FIT verification, CONFIG_IS_ENABLED(SHA256) is used
(good), but there is no corresponding CONFIG_SPL_SHA256 (bad). This
will always be false for SPL, hence certain "hash" algos are broken.

This series resolves the selection by replacing the broken selection
with hash_lookup_algo(), which does not have the aforementioned
problem. This at the very least allows 'algo = "sha256"' FIT nodes to
work in SPL.

This series does not attempt to add individual SHA/CRC/MD5 configs for
SPL. Hash algo selection for SPL has been problematic even before. This
series is meant as an emergency fix, so it does not attempt to tackle
general refactoring issues.

Alexandru Gagniuc (5):
  common: Remove unused CONFIG_FIT_SHAxxx selectors
  lib: Drop SHA512_ALGO in lieu of SHA512
  common/spl: Drop SPL_HASH_SUPPORT in favor of SPL_HASH
  image: Drop if/elseif hash selection in calculate_hash()
  image: Drop IMAGE_ENABLE_{MD5, CRC32} #defines

 arch/arm/mach-socfpga/Kconfig                 |  2 +-
 common/Kconfig.boot                           | 32 ++---------
 common/Makefile                               |  3 +-
 common/image-fit.c                            | 45 +++++++---------
 common/spl/Kconfig                            | 54 +------------------
 ...s1021atwr_sdcard_ifc_SECURE_BOOT_defconfig |  2 +-
 configs/ls1043ardb_nand_SECURE_BOOT_defconfig |  2 +-
 .../ls1043ardb_sdcard_SECURE_BOOT_defconfig   |  2 +-
 .../ls1046ardb_sdcard_SECURE_BOOT_defconfig   |  2 +-
 ...1088ardb_sdcard_qspi_SECURE_BOOT_defconfig |  2 +-
 configs/mt8516_pumpkin_defconfig              |  2 +-
 include/configs/xilinx_zynqmp.h               |  2 +-
 include/image.h                               | 23 --------
 lib/Kconfig                                   | 12 ++---
 lib/Makefile                                  |  2 +-
 lib/crypt/Kconfig                             |  2 +-
 lib/efi_loader/Kconfig                        |  2 +-
 lib/sha512.c                                  |  2 -
 18 files changed, 39 insertions(+), 154 deletions(-)

-- 
2.31.1



More information about the U-Boot mailing list