mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
use broken-out patches for the coldfire to make it easier to follow differences against the bsp
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16547 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
From 4e16f08c800d57b986217e0d39d4a06b5bdf641d Mon Sep 17 00:00:00 2001
|
||||
From: Kurt Mahan <kmahan@freescale.com>
|
||||
Date: Wed, 19 Mar 2008 17:37:44 -0600
|
||||
Subject: [PATCH] Move BSS section in linker script and zero it on boot.
|
||||
|
||||
To work with the latest round of toolchains the bss section
|
||||
in the linker script needed to be moved to the end (due to
|
||||
the linker thinking there were overlapping sections).
|
||||
|
||||
The BSS section needs to be manually zeroed.
|
||||
|
||||
LTIBName: mcfv4e-linker-bss-cleanup
|
||||
Signed-off-by: Kurt Mahan <kmahan@freescale.com>
|
||||
---
|
||||
arch/m68k/coldfire/head.S | 11 +++++++++++
|
||||
arch/m68k/coldfire/vmlinux-cf.lds | 11 ++++++++---
|
||||
2 files changed, 19 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/arch/m68k/coldfire/head.S
|
||||
+++ b/arch/m68k/coldfire/head.S
|
||||
@@ -321,6 +321,17 @@ ENTRY(__start)
|
||||
movec %d0, %acr3
|
||||
nop
|
||||
|
||||
+#ifdef CONFIG_COLDFIRE
|
||||
+/* zero bss */
|
||||
+ lea _sbss,%a0
|
||||
+ lea _ebss,%a1
|
||||
+ clrl %d0
|
||||
+_loop_bss:
|
||||
+ movel %d0,(%a0)+
|
||||
+ cmpl %a0,%a1
|
||||
+ bne _loop_bss
|
||||
+#endif
|
||||
+
|
||||
/* If you change the memory size to another value make a matching
|
||||
change in paging_init(cf-mmu.c) to zones_size[]. */
|
||||
|
||||
--- a/arch/m68k/coldfire/vmlinux-cf.lds
|
||||
+++ b/arch/m68k/coldfire/vmlinux-cf.lds
|
||||
@@ -51,9 +51,6 @@ SECTIONS
|
||||
CONSTRUCTORS
|
||||
} :data
|
||||
|
||||
- .bss : AT(ADDR(.bss) - LOAD_OFFSET) { /* BSS */
|
||||
- *(.bss)
|
||||
- }
|
||||
|
||||
. = ALIGN(16);
|
||||
.data.cacheline_aligned : AT(ADDR(.data.cacheline_aligned) - LOAD_OFFSET ) {
|
||||
@@ -62,6 +59,8 @@ SECTIONS
|
||||
|
||||
_edata = .; /* End of data section */
|
||||
|
||||
+ NOTES /* support ld --build-id */
|
||||
+
|
||||
. = ALIGN(8192); /* Initrd */
|
||||
.init.text : AT(ADDR(.init.text) - LOAD_OFFSET) {
|
||||
__init_begin = .;
|
||||
@@ -111,6 +110,12 @@ SECTIONS
|
||||
*(.data.init_task) /* The initial task and kernel stack */
|
||||
}
|
||||
|
||||
+ _sbss = .;
|
||||
+ .bss : AT(ADDR(.bss) - LOAD_OFFSET) { /* BSS */
|
||||
+ *(.bss)
|
||||
+ }
|
||||
+ _ebss = .;
|
||||
+
|
||||
_end = . ;
|
||||
|
||||
/* Sections to be discarded */
|
||||
Reference in New Issue
Block a user