On Wed, 2020-01-08 at 08:22 +0100, Heinrich Schuchardt wrote: > > On 1/8/20 4:01 AM, Weijie Gao wrote: > > This patch enables LZMA decompression support for SPL build > > > > Signed-off-by: Weijie Gao <weijie....@mediatek.com> > > --- > > lib/Kconfig | 5 +++++ > > lib/Makefile | 1 + > > 2 files changed, 6 insertions(+) > > > > diff --git a/lib/Kconfig b/lib/Kconfig > > index 965cf7bc03..2f38e37802 100644 > > --- a/lib/Kconfig > > +++ b/lib/Kconfig > > @@ -418,6 +418,11 @@ config SPL_LZ4 > > 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" > > + help > > + This enables support for LZMA compression altorithm for SPL boot. > > %s/altorithm/algorithm/g > > Why do we need yet another algorithm for compression? > > Doesn't Zstandard provide a much faster decompression? > Cf. https://sites.google.com/site/powturbo/home/web-compression > > Best regards > > Heinrich > > > + > > config SPL_LZO > > bool "Enable LZO decompression support in SPL" > > help > > diff --git a/lib/Makefile b/lib/Makefile > > index 1fb650cd90..8e51eec01c 100644 > > --- a/lib/Makefile > > +++ b/lib/Makefile > > @@ -64,6 +64,7 @@ obj-$(CONFIG_$(SPL_)ZLIB) += zlib/ > > obj-$(CONFIG_$(SPL_)ZSTD) += zstd/ > > obj-$(CONFIG_$(SPL_)GZIP) += gunzip.o > > obj-$(CONFIG_$(SPL_)LZO) += lzo/ > > +obj-$(CONFIG_$(SPL_)LZMA) += lzma/ > > obj-$(CONFIG_$(SPL_)LZ4) += lz4_wrapper.o > > > > obj-$(CONFIG_LIBAVB) += libavb/ > >
Hi Heinrich, I need an algorithm with the maximum compression ratio to reduce the size of the u-boot payload as much as possible. I believe currently lzma and xz are the best choices. Refer to: https://catchchallenger.first-world.info/wiki/Quick_Benchmark:_Gzip_vs_Bzip2_vs_LZMA_vs_XZ_vs_LZ4_vs_LZO Although they will take longer time for compression and decompression, considering that the u-boot payload is usually small (<= 1MiB), there will not be significant effect on decompression time. Best Regards, Weijie