lib: fdt: Allow LZO and GZIP DT compression in U-Boot
Add required Kconfig symbols, Makefile bits and macro fixes in a
few places to support LZO and DT compression in U-Boot. This can
save a lot of space with multi-DTB fitImages.
Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
diff --git a/Makefile b/Makefile
index aedc2ea..4e4a33d 100644
--- a/Makefile
+++ b/Makefile
@@ -1020,6 +1020,20 @@
ifeq ($(CONFIG_MULTI_DTB_FIT),y)
+ifeq ($(CONFIG_MULTI_DTB_FIT_LZO),y)
+FINAL_DTB_CONTAINER = fit-dtb.blob.lzo
+else ifeq ($(CONFIG_MULTI_DTB_FIT_GZIP),y)
+FINAL_DTB_CONTAINER = fit-dtb.blob.gz
+else
+FINAL_DTB_CONTAINER = fit-dtb.blob
+endif
+
+fit-dtb.blob.gz: fit-dtb.blob
+ @gzip -kf9 $< > $@
+
+fit-dtb.blob.lzo: fit-dtb.blob
+ @lzop -f9 $< > $@
+
fit-dtb.blob: dts/dt.dtb FORCE
$(call if_changed,mkimage)
@@ -1027,7 +1041,7 @@
-a 0 -e 0 -E \
$(patsubst %,-b arch/$(ARCH)/dts/%.dtb,$(subst ",,$(CONFIG_OF_LIST))) -d /dev/null
-u-boot-fit-dtb.bin: u-boot-nodtb.bin fit-dtb.blob
+u-boot-fit-dtb.bin: u-boot-nodtb.bin $(FINAL_DTB_CONTAINER)
$(call if_changed,cat)
u-boot.bin: u-boot-fit-dtb.bin FORCE