@@ -811,12 +811,36 @@ config SPL_LZ4
fast compression and decompression speed. It belongs to the LZ77
family of byte-oriented compression schemes.
+config TPL_LZ4
+ bool "Enable LZ4 decompression support in TPL"
+ depends on TPL
+ help
+ This enables support for the LZ4 decompression algorithm in TPL. LZ4
+ is a lossless data compression algorithm that is focused on
+ fast compression and decompression speed. It belongs to the LZ77
+ family of byte-oriented compression schemes.
+
+config VPL_LZ4
+ bool "Enable LZ4 decompression support in VPL"
+ depends on VPL
+ help
+ This enables support for the LZ4 decompression algorithm in VPL. LZ4
+ is a lossless data compression algorithm that is focused on
+ fast compression and decompression speed. It belongs to the LZ77
+ family of byte-oriented compression schemes.
+
config SPL_LZMA
bool "Enable LZMA decompression support for SPL build"
depends on SPL
help
This enables support for LZMA compression algorithm for SPL boot.
+config TPL_LZMA
+ bool "Enable LZMA decompression support for TPL build"
+ depends on TPL
+ help
+ This enables support for LZMA compression algorithm for TPL boot.
+
config VPL_LZMA
bool "Enable LZMA decompression support for VPL build"
default y if LZMA
@@ -835,11 +859,22 @@ config SPL_GZIP
help
This enables support for the GZIP compression algorithm for SPL boot.
+config TPL_GZIP
+ bool "Enable gzip decompression support for SPL build"
+ select TPL_ZLIB
+ help
+ This enables support for the GZIP compression algorithm for TPL
+
config SPL_ZLIB
bool
help
This enables compression lib for SPL boot.
+config TPL_ZLIB
+ bool
+ help
+ This enables compression lib for TPL
+
config SPL_ZSTD
bool "Enable Zstandard decompression support in SPL"
depends on SPL
@@ -82,12 +82,12 @@ obj-$(CONFIG_$(SPL_)SHA512) += sha512.o
obj-$(CONFIG_CRYPT_PW) += crypt/
obj-$(CONFIG_$(SPL_)ASN1_DECODER) += asn1_decoder.o
-obj-$(CONFIG_$(SPL_)ZLIB) += zlib/
+obj-$(CONFIG_$(SPL_TPL_)ZLIB) += zlib/
obj-$(CONFIG_$(SPL_)ZSTD) += zstd/
-obj-$(CONFIG_$(SPL_)GZIP) += gunzip.o
+obj-$(CONFIG_$(SPL_TPL_)GZIP) += gunzip.o
obj-$(CONFIG_$(SPL_)LZO) += lzo/
-obj-$(CONFIG_$(SPL_)LZMA) += lzma/
-obj-$(CONFIG_$(SPL_)LZ4) += lz4_wrapper.o
+obj-$(CONFIG_$(SPL_TPL_)LZMA) += lzma/
+obj-$(CONFIG_$(SPL_TPL_)LZ4) += lz4_wrapper.o
obj-$(CONFIG_$(SPL_)LIB_RATIONAL) += rational.o
Add Kconfig symbols and update the Makefile rules so that decompression can be used in TPL and VPL Signed-off-by: Simon Glass <sjg@chromium.org> --- lib/Kconfig | 35 +++++++++++++++++++++++++++++++++++ lib/Makefile | 8 ++++---- 2 files changed, 39 insertions(+), 4 deletions(-)