From: Lad Prabhakar Date: Tue, 1 Oct 2024 09:56:47 +0000 (+0100) Subject: lib: fdtdec: Parse the gzip/lzo headers only when dependencies have met X-Git-Url: http://git.dujemihanovic.xyz/img/static/git-logo.png?a=commitdiff_plain;h=22371048ed4646376ec71061930f15d5e4181c07;p=u-boot.git lib: fdtdec: Parse the gzip/lzo headers only when dependencies have met It might happen that CONFIG_GZIP and CONFIG_LZO are enabled but we might have CONFIG_MULTI_DTB_FIT_LZO enabled in this case in the code path of uncompress_blob() we parse the gzip headers first which results in `Error: Bad gzipped data` being printed. To avoid this parse the gzip/lzo headers only when dependencies have met. Signed-off-by: Lad Prabhakar Reviewed-by: Tom Rini --- diff --git a/lib/fdtdec.c b/lib/fdtdec.c index 85f4426f90..b065598802 100644 --- a/lib/fdtdec.c +++ b/lib/fdtdec.c @@ -1172,10 +1172,10 @@ static int uncompress_blob(const void *src, ulong sz_src, void **dstp) void *dst; int rc; - if (CONFIG_IS_ENABLED(GZIP)) + if (CONFIG_IS_ENABLED(GZIP) && CONFIG_IS_ENABLED(MULTI_DTB_FIT_GZIP)) if (gzip_parse_header(src, sz_in) >= 0) gzip = 1; - if (CONFIG_IS_ENABLED(LZO)) + if (CONFIG_IS_ENABLED(LZO) && CONFIG_IS_ENABLED(MULTI_DTB_FIT_LZO)) if (!gzip && lzop_is_valid_header(src)) lzo = 1;