summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2012-07-22 18:12:01 +0800
committerJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2012-08-03 18:09:15 +0800
commit104c39fe820a9311e4b56f5577a1dc82127484db (patch)
tree3b7df9ce96a107d76658266b74662f14979d8cf5 /arch
parent8d29296240863ce5962a3e8127f7854fdfbbd73f (diff)
downloadbarebox-104c39fe820a9311e4b56f5577a1dc82127484db.tar.gz
barebox-104c39fe820a9311e4b56f5577a1dc82127484db.tar.xz
compressed image: add gzip support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/cpu/start-pbl.c4
-rw-r--r--arch/arm/pbl/Makefile1
-rw-r--r--arch/arm/pbl/piggy.gzip.S6
3 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/cpu/start-pbl.c b/arch/arm/cpu/start-pbl.c
index dd5c483f81..004ba6a2e6 100644
--- a/arch/arm/cpu/start-pbl.c
+++ b/arch/arm/cpu/start-pbl.c
@@ -46,6 +46,10 @@ extern void *input_data_end;
#include "../../../lib/decompress_unlzo.c"
#endif
+#ifdef CONFIG_IMAGE_COMPRESSION_GZIP
+#include "../../../../lib/decompress_inflate.c"
+#endif
+
static void barebox_uncompress(void *compressed_start, unsigned int len)
{
void (*barebox)(void);
diff --git a/arch/arm/pbl/Makefile b/arch/arm/pbl/Makefile
index 413591104f..04fdffbaf1 100644
--- a/arch/arm/pbl/Makefile
+++ b/arch/arm/pbl/Makefile
@@ -1,4 +1,5 @@
+suffix_$(CONFIG_IMAGE_COMPRESSION_GZIP) = gzip
suffix_$(CONFIG_IMAGE_COMPRESSION_LZO) = lzo
OBJCOPYFLAGS_zbarebox.bin = -O binary
diff --git a/arch/arm/pbl/piggy.gzip.S b/arch/arm/pbl/piggy.gzip.S
new file mode 100644
index 0000000000..4a623c0c57
--- /dev/null
+++ b/arch/arm/pbl/piggy.gzip.S
@@ -0,0 +1,6 @@
+ .section .piggydata,#alloc
+ .globl input_data
+input_data:
+ .incbin "arch/arm/pbl/piggy.gzip"
+ .globl input_data_end
+input_data_end: