fs: ext4: Fix building ext4 in SPL if write is enabled
authorSean Anderson <seanga2@gmail.com>
Sat, 14 Oct 2023 20:47:49 +0000 (16:47 -0400)
committerTom Rini <trini@konsulko.com>
Wed, 18 Oct 2023 00:50:52 +0000 (20:50 -0400)
If EXT4_WRITE is enabled, write capabilities will be compiled into SPL, but
not CRC16. Add an option to enable CRC16 to avoid linker errors.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
common/spl/Kconfig
lib/Kconfig
lib/Makefile

index ad574a6..6bc4066 100644 (file)
@@ -657,6 +657,7 @@ config SPL_ETH
 
 config SPL_FS_EXT4
        bool "Support EXT filesystems"
+       select SPL_CRC16 if EXT4_WRITE
        help
          Enable support for EXT2/3/4 filesystems with SPL. This permits
          U-Boot (or Linux in Falcon mode) to be loaded from an EXT
index 79cf9ef..f6ca559 100644 (file)
@@ -687,6 +687,12 @@ config SPL_CRC8
          checksum with feedback to produce an 8-bit result. The code is small
          and it does not require a lookup table (unlike CRC32).
 
+config SPL_CRC16
+       bool "Support CRC16 in SPL"
+       depends on SPL
+       help
+         Enables CRC16 support in SPL. This is not normally required.
+
 config CRC32
        def_bool y
        help
index 1c31ad9..2a76acf 100644 (file)
@@ -64,6 +64,7 @@ obj-$(CONFIG_TPM_V2) += tpm-v2.o
 endif
 
 obj-$(CONFIG_$(SPL_TPL_)CRC8) += crc8.o
+obj-$(CONFIG_$(SPL_TPL_)CRC16) += crc16.o
 
 obj-y += crypto/