Explorar o código

m68k: use non-MMU linker script for ColdFire MMU builds

Use the non-MMU linker script for ColdFire builds when we are building
for MMU enabled. The image layout is correct for loading on existing
ColdFire dev boards. The only addition required to the current non-MMU
linker script is to add support for the fixup section.

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Matt Waddel <mwaddel@yahoo.com>
Acked-by: Kurt Mahan <kmahan@xmission.com>
Greg Ungerer %!s(int64=14) %!d(string=hai) anos
pai
achega
ed865e31a8
Modificáronse 2 ficheiros con 9 adicións e 1 borrados
  1. 8 0
      arch/m68k/kernel/vmlinux-nommu.lds
  2. 1 1
      arch/m68k/kernel/vmlinux.lds.S

+ 8 - 0
arch/m68k/kernel/vmlinux-nommu.lds

@@ -69,6 +69,7 @@ SECTIONS {
 		SCHED_TEXT
 		SCHED_TEXT
 		LOCK_TEXT
 		LOCK_TEXT
 		*(.text..lock)
 		*(.text..lock)
+		*(.fixup)
 
 
 		. = ALIGN(16);          /* Exception table              */
 		. = ALIGN(16);          /* Exception table              */
 		__start___ex_table = .;
 		__start___ex_table = .;
@@ -161,6 +162,13 @@ SECTIONS {
 		_edata = . ;
 		_edata = . ;
 	} > DATA
 	} > DATA
 
 
+	.m68k_fixup : {
+		__start_fixup = .;
+		*(.m68k_fixup)
+		__stop_fixup = .;
+	} > DATA
+	NOTES > DATA
+
 	.init.text : {
 	.init.text : {
 		. = ALIGN(PAGE_SIZE);
 		. = ALIGN(PAGE_SIZE);
 		__init_begin = .;
 		__init_begin = .;

+ 1 - 1
arch/m68k/kernel/vmlinux.lds.S

@@ -1,4 +1,4 @@
-#ifdef CONFIG_MMU
+#if defined(CONFIG_MMU) && !defined(CONFIG_COLDFIRE)
 PHDRS
 PHDRS
 {
 {
   text PT_LOAD FILEHDR PHDRS FLAGS (7);
   text PT_LOAD FILEHDR PHDRS FLAGS (7);