summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-05-29 14:31:56 +0000
committerhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-05-29 14:31:56 +0000
commitf032f3d022d06e1d3e1e834749d95941fd07bcd4 (patch)
tree7599646c1d0880b5aa62a6c9e3a5d36d55f51d6e
parent103fa6b4eb3d09c2dc6baed54b8a11c727029884 (diff)
kernel: add lzma support for arm cpu.
This patch appears to be lost beetween 2.6.32 and 2.6.33. Thank you Maddes for the patch. This helps making orion work with kernel 2.6.34. closes #7377. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21622 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/generic-2.6/patches-2.6.34/055-lzma_arm_kernel.patch57
1 files changed, 57 insertions, 0 deletions
diff --git a/target/linux/generic-2.6/patches-2.6.34/055-lzma_arm_kernel.patch b/target/linux/generic-2.6/patches-2.6.34/055-lzma_arm_kernel.patch
new file mode 100644
index 0000000000..cda31d2f71
--- /dev/null
+++ b/target/linux/generic-2.6/patches-2.6.34/055-lzma_arm_kernel.patch
@@ -0,0 +1,57 @@
+From d0f226a0f104c7d1da1d215b8013359273e39e18 Mon Sep 17 00:00:00 2001
+From: Albin Tonnerre <albin.tonnerre@free-electrons.com>
+Date: Fri, 16 Oct 2009 16:17:22 +0200
+Subject: [PATCH] Add LZMA decompression on ARM
+
+
+Signed-off-by: Albin Tonnerre <albin.tonnerre@free-electrons.com>
+---
+ arch/arm/Kconfig | 1 +
+ arch/arm/boot/compressed/Makefile | 1 +
+ arch/arm/boot/compressed/misc.c | 4 ++++
+ arch/arm/boot/compressed/piggy.lzma.S | 6 ++++++
+ 4 files changed, 12 insertions(+), 0 deletions(-)
+ create mode 100644 arch/arm/boot/compressed/piggy.lzma.S
+
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -21,6 +21,7 @@ config ARM
+ select HAVE_GENERIC_DMA_COHERENT
+ select HAVE_KERNEL_GZIP
+ select HAVE_KERNEL_LZO
++ select HAVE_KERNEL_LZMA
+ select HAVE_PERF_EVENTS
+ select PERF_USE_VMALLOC
+ help
+--- a/arch/arm/boot/compressed/Makefile
++++ b/arch/arm/boot/compressed/Makefile
+@@ -65,6 +65,7 @@ SEDFLAGS = s/TEXT_START/$(ZTEXTADDR)/;s/
+
+ suffix_$(CONFIG_KERNEL_GZIP) = gzip
+ suffix_$(CONFIG_KERNEL_LZO) = lzo
++suffix_$(CONFIG_KERNEL_LZMA) = lzma
+
+ targets := vmlinux vmlinux.lds \
+ piggy.$(suffix_y) piggy.$(suffix_y).o \
+--- a/arch/arm/boot/compressed/decompress.c
++++ b/arch/arm/boot/compressed/decompress.c
+@@ -40,6 +40,10 @@ extern void error(char *);
+ #include "../../../../lib/decompress_unlzo.c"
+ #endif
+
++#ifdef CONFIG_KERNEL_LZMA
++#include "../../../../lib/decompress_unlzma.c"
++#endif
++
+ void do_decompress(u8 *input, int len, u8 *output, void (*error)(char *x))
+ {
+ decompress(input, len, NULL, NULL, output, NULL, error);
+--- /dev/null
++++ b/arch/arm/boot/compressed/piggy.lzma.S
+@@ -0,0 +1,6 @@
++ .section .piggydata,#alloc
++ .globl input_data
++input_data:
++ .incbin "arch/arm/boot/compressed/piggy.lzma"
++ .globl input_data_end
++input_data_end: