summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/barebox-arm.h
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2015-10-23 09:14:54 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2015-10-27 10:02:28 +0100
commit58eae8361c10fea661bcb48c4c5e75e7ad19e1c1 (patch)
treef25d31a025cfea28348d4279090877e3da72862a /arch/arm/include/asm/barebox-arm.h
parentfcc6020164362f0c4877e6f50fb0d323d50ee540 (diff)
downloadbarebox-58eae8361c10fea661bcb48c4c5e75e7ad19e1c1.tar.gz
barebox-58eae8361c10fea661bcb48c4c5e75e7ad19e1c1.tar.xz
ARM: Allow compressed dtb binaries
In the current multi image build process the DTBs end up uncompressed in the PBL. This can be annoying because the PBL is often very size constrained. This patch allows to put the DTBs in as lzo compressed binary into the PBL. Since lzo offers quite good compression ratios for DTBs no other compression algorithm has been implemented for now. Boards which want to use the compressed DTBs only have to change the __dtb_ prefix in the DTB name to __dtb_z_. Also they should select ARM_USE_COMPRESSED_DTB to make sure barebox supports uncompressing the DTB. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/include/asm/barebox-arm.h')
-rw-r--r--arch/arm/include/asm/barebox-arm.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/include/asm/barebox-arm.h b/arch/arm/include/asm/barebox-arm.h
index 0b8acb8b8e..76e356413a 100644
--- a/arch/arm/include/asm/barebox-arm.h
+++ b/arch/arm/include/asm/barebox-arm.h
@@ -75,6 +75,15 @@ static inline void boarddata_create(void *adr, u32 machine)
u32 barebox_arm_machine(void);
+struct barebox_arm_boarddata_compressed_dtb {
+#define BAREBOX_ARM_BOARDDATA_COMPRESSED_DTB_MAGIC 0x7b66bcbd
+ u32 magic;
+ u32 datalen;
+ u32 datalen_uncompressed;
+};
+
+struct barebox_arm_boarddata *barebox_arm_get_boarddata(void);
+
#if defined(CONFIG_RELOCATABLE) && defined(CONFIG_ARM_EXCEPTIONS)
void arm_fixup_vectors(void);
#else