From patchwork Fri May 22 12:07:35 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Walle X-Patchwork-Id: 246252 List-Id: U-Boot discussion From: michael at walle.cc (Michael Walle) Date: Fri, 22 May 2020 14:07:35 +0200 Subject: [PATCH 1/4] cmd: unzip: automatically select CONFIG_GZIP In-Reply-To: <20200522120738.13376-1-michael@walle.cc> References: <20200522120738.13376-1-michael@walle.cc> Message-ID: <20200522120738.13376-2-michael@walle.cc> unzip calls gzwrite() which is provided in lib/gunzip.c. Make sure it is automatically pulled in if the user selects CMD_UNZIP. Signed-off-by: Michael Walle Reviewed-by: Heinrich Schuchardt --- cmd/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/cmd/Kconfig b/cmd/Kconfig index f9be1988f6..f4eb575b6e 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -810,6 +810,7 @@ config CMD_UNLZ4 config CMD_UNZIP bool "unzip" default y if CMD_BOOTI + select GZIP help Uncompress a zip-compressed memory region. From patchwork Fri May 22 12:07:36 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Walle X-Patchwork-Id: 246256 List-Id: U-Boot discussion From: michael at walle.cc (Michael Walle) Date: Fri, 22 May 2020 14:07:36 +0200 Subject: [PATCH 2/4] cmd: zip: automatically pull in gzip() In-Reply-To: <20200522120738.13376-1-michael@walle.cc> References: <20200522120738.13376-1-michael@walle.cc> Message-ID: <20200522120738.13376-3-michael@walle.cc> Move the CONFIG_GZIP_COMPRESSED from a config.h macro to a Kconfig menu item. It is not selectable by a user because there is no reason to do so. Instead it will be automatically selected by the stuff which uses gzip(), like the zip command. Remove it from the config_whitelist.txt. Also remove CONFIG_GZIP_COMPRESS_DEF_SZ as this was never used on any board. The default seems to be sane, otherwise it should be added as a Kconfig option. Signed-off-by: Michael Walle Reviewed-by: Simon Glass --- cmd/Kconfig | 1 + lib/Kconfig | 4 ++++ scripts/config_whitelist.txt | 2 -- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/cmd/Kconfig b/cmd/Kconfig index f4eb575b6e..153864c587 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -816,6 +816,7 @@ config CMD_UNZIP config CMD_ZIP bool "zip" + select GZIP_COMPRESSED help Compress a memory region with zlib deflate method. diff --git a/lib/Kconfig b/lib/Kconfig index c3f694afc0..f18bf3778b 100644 --- a/lib/Kconfig +++ b/lib/Kconfig @@ -424,6 +424,10 @@ config GZIP help This enables support for GZIP compression algorithm. +config GZIP_COMPRESSED + bool + select ZLIB + config BZIP2 bool "Enable bzip2 decompression support" help diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt index 3f5e6504e1..2ec0758b75 100644 --- a/scripts/config_whitelist.txt +++ b/scripts/config_whitelist.txt @@ -644,8 +644,6 @@ CONFIG_GPIO_LED_STUBS CONFIG_GREEN_LED CONFIG_GURNARD_FPGA CONFIG_GURNARD_SPLASH -CONFIG_GZIP_COMPRESSED -CONFIG_GZIP_COMPRESS_DEF_SZ CONFIG_G_DNL_THOR_PRODUCT_NUM CONFIG_G_DNL_THOR_VENDOR_NUM CONFIG_G_DNL_UMS_PRODUCT_NUM From patchwork Fri May 22 12:07:37 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Walle X-Patchwork-Id: 246254 List-Id: U-Boot discussion From: michael at walle.cc (Michael Walle) Date: Fri, 22 May 2020 14:07:37 +0200 Subject: [PATCH 3/4] cmd: zip: fix implicit declaration warning In-Reply-To: <20200522120738.13376-1-michael@walle.cc> References: <20200522120738.13376-1-michael@walle.cc> Message-ID: <20200522120738.13376-4-michael@walle.cc> Fix the following warning: cmd/zip.c: In function ?do_zip?: cmd/zip.c:30:6: warning: implicit declaration of function ?gzip?; did you mean ?do_zip?? [-Wimplicit-function-declaration] if (gzip((void *) dst, &dst_len, (void *) src, src_len) != 0) ^~~~ do_zip Include gzip.h header which declares the gzip() function. Signed-off-by: Michael Walle Reviewed-by: Simon Glass --- cmd/zip.c | 1 + 1 file changed, 1 insertion(+) diff --git a/cmd/zip.c b/cmd/zip.c index b433f1889f..8ad3768464 100644 --- a/cmd/zip.c +++ b/cmd/zip.c @@ -7,6 +7,7 @@ #include #include #include +#include static int do_zip(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { From patchwork Fri May 22 12:07:38 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Walle X-Patchwork-Id: 246255 List-Id: U-Boot discussion From: michael at walle.cc (Michael Walle) Date: Fri, 22 May 2020 14:07:38 +0200 Subject: [PATCH 4/4] sandbox: move compression option to Kconfig In-Reply-To: <20200522120738.13376-1-michael@walle.cc> References: <20200522120738.13376-1-michael@walle.cc> Message-ID: <20200522120738.13376-5-michael@walle.cc> CONFIG_BZIP2 and CONFIG_GZIP_COMPRESSED are Kconfig options. Select them by CONFIG_SANDBOX instead of setting them in configs/sandbox.h. Signed-off-by: Michael Walle Reviewed-by: Simon Glass --- arch/Kconfig | 2 ++ include/configs/sandbox.h | 3 --- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/arch/Kconfig b/arch/Kconfig index 91e049b322..a11f872938 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -86,6 +86,7 @@ config RISCV config SANDBOX bool "Sandbox" select BOARD_LATE_INIT + select BZIP2 select DM select DM_GPIO select DM_I2C @@ -94,6 +95,7 @@ config SANDBOX select DM_SERIAL select DM_SPI select DM_SPI_FLASH + select GZIP_COMPRESSED select HAVE_BLOCK_DEVICE select LZO select OF_BOARD_SETUP diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h index 4549c81169..a2c9811eca 100644 --- a/include/configs/sandbox.h +++ b/include/configs/sandbox.h @@ -114,9 +114,6 @@ BOOTENV \ MEM_LAYOUT_ENV_SETTINGS -#define CONFIG_GZIP_COMPRESSED -#define CONFIG_BZIP2 - #ifndef CONFIG_SPL_BUILD #define CONFIG_SYS_IDE_MAXBUS 1 #define CONFIG_SYS_ATA_IDE0_OFFSET 0