aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2013-08-28 07:38:36 +0000
committerFelix Fietkau <nbd@openwrt.org>2013-08-28 07:38:36 +0000
commit7a22238d852a980e74630ca16ce28176227a3cb5 (patch)
tree3cea6220d12ec4b8d573bbe04ebcd10846a8dd4a /target/linux/generic
parente0b475661e65aaaac84620f359e817537cdf3c00 (diff)
downloadupstream-7a22238d852a980e74630ca16ce28176227a3cb5.tar.gz
upstream-7a22238d852a980e74630ca16ce28176227a3cb5.tar.bz2
upstream-7a22238d852a980e74630ca16ce28176227a3cb5.zip
kernel: fix booting issues on imx23 and imx6 targets
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37854 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic')
-rw-r--r--target/linux/generic/patches-3.10/220-gc_sections.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.10/220-gc_sections.patch b/target/linux/generic/patches-3.10/220-gc_sections.patch
index 54caa855c9..cc40d8e5ff 100644
--- a/target/linux/generic/patches-3.10/220-gc_sections.patch
+++ b/target/linux/generic/patches-3.10/220-gc_sections.patch
@@ -1,3 +1,15 @@
+From: Felix Fietkau <nbd@openwrt.org>
+
+use -ffunction-sections, -fdata-sections and --gc-sections
+
+In combination with kernel symbol export stripping this significantly reduces
+the kernel image size. Used on both ARM and MIPS architectures.
+
+Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
+---
+
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -89,10 +89,14 @@ all-$(CONFIG_SYS_SUPPORTS_ZBOOT)+= vmlin
@@ -475,6 +487,23 @@
__stop_unwind_tab = .;
}
#endif
+@@ -158,14 +158,14 @@ SECTIONS
+ */
+ __vectors_start = .;
+ .vectors 0 : AT(__vectors_start) {
+- *(.vectors)
++ KEEP(*(.vectors))
+ }
+ . = __vectors_start + SIZEOF(.vectors);
+ __vectors_end = .;
+
+ __stubs_start = .;
+ .stubs 0x1000 : AT(__stubs_start) {
+- *(.stubs)
++ KEEP(*(.stubs))
+ }
+ . = __stubs_start + SIZEOF(.stubs);
+ __stubs_end = .;
@@ -179,24 +179,24 @@ SECTIONS
}
.init.arch.info : {