Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7c5fd561 authored by Tim Abbott's avatar Tim Abbott Committed by Geert Uytterhoeven
Browse files

m68k: Cleanup linker scripts using new linker script macros.



Signed-off-by: default avatarTim Abbott <tabbott@ksplice.com>
Tested-by: default avatarAndreas Schwab <schwab@linux-m68k.org>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
parent 5cdef24b
Loading
Loading
Loading
Loading
+13 −48
Original line number Original line Diff line number Diff line
@@ -2,6 +2,7 @@


#include <asm-generic/vmlinux.lds.h>
#include <asm-generic/vmlinux.lds.h>
#include <asm/page.h>
#include <asm/page.h>
#include <asm/thread_info.h>


OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
OUTPUT_ARCH(m68k)
OUTPUT_ARCH(m68k)
@@ -22,73 +23,37 @@ SECTIONS


  _etext = .;			/* End of text section */
  _etext = .;			/* End of text section */


  . = ALIGN(16);		/* Exception table */
  EXCEPTION_TABLE(16)
  __start___ex_table = .;
  __ex_table : { *(__ex_table) }
  __stop___ex_table = .;


  RODATA
  RODATA


  .data : {			/* Data */
  RW_DATA_SECTION(16, PAGE_SIZE, THREAD_SIZE)
	DATA_DATA
	CONSTRUCTORS
	}

  . = ALIGN(16);
  .data.cacheline_aligned : { *(.data.cacheline_aligned) }


  .bss : { *(.bss) }		/* BSS */
  BSS_SECTION(0, 0, 0)


  _edata = .;			/* End of data section */
  _edata = .;			/* End of data section */


  /* will be freed after init */
  /* will be freed after init */
  . = ALIGN(PAGE_SIZE);		/* Init code and data */
  . = ALIGN(PAGE_SIZE);		/* Init code and data */
  __init_begin = .;
  __init_begin = .;
  .init.text : {
  INIT_TEXT_SECTION(PAGE_SIZE) :data
	_sinittext = .;
  INIT_DATA_SECTION(16)
	INIT_TEXT
	_einittext = .;
  } :data
  .init.data : { INIT_DATA }
  . = ALIGN(16);
  __setup_start = .;
  .init.setup : { *(.init.setup) }
  __setup_end = .;
  __initcall_start = .;
  .initcall.init : {
	INITCALLS
  }
  __initcall_end = .;
  __con_initcall_start = .;
  .con_initcall.init : { *(.con_initcall.init) }
  __con_initcall_end = .;
  .m68k_fixup : {
  .m68k_fixup : {
	__start_fixup = .;
	__start_fixup = .;
	*(.m68k_fixup)
	*(.m68k_fixup)
	__stop_fixup = .;
	__stop_fixup = .;
  }
  }
  SECURITY_INIT
#ifdef CONFIG_BLK_DEV_INITRD
  . = ALIGN(8192);
  __initramfs_start = .;
  .init.ramfs : { *(.init.ramfs) }
  __initramfs_end = .;
#endif
  NOTES
  NOTES
  . = ALIGN(8192);
  .init_end : {
	/* This ALIGN be in a section so that _end is at the end of the
	   load segment. */
	. = ALIGN(PAGE_SIZE);
	__init_end = .;
	__init_end = .;

  }
  .data.init_task : { *(.data.init_task) }	/* The initial task and kernel stack */


  _end = . ;
  _end = . ;


  /* Stabs debugging sections.  */
  STABS_DEBUG
  .stab 0 : { *(.stab) }
  .stabstr 0 : { *(.stabstr) }
  .stab.excl 0 : { *(.stab.excl) }
  .stab.exclstr 0 : { *(.stab.exclstr) }
  .stab.index 0 : { *(.stab.index) }
  .stab.indexstr 0 : { *(.stab.indexstr) }
  .comment 0 : { *(.comment) }
  .comment 0 : { *(.comment) }


  /* Sections to be discarded */
  /* Sections to be discarded */
+7 −47
Original line number Original line Diff line number Diff line
@@ -2,6 +2,7 @@


#include <asm-generic/vmlinux.lds.h>
#include <asm-generic/vmlinux.lds.h>
#include <asm/page.h>
#include <asm/page.h>
#include <asm/thread_info.h>


OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
OUTPUT_ARCH(m68k)
OUTPUT_ARCH(m68k)
@@ -23,14 +24,8 @@ SECTIONS


  _etext = .;			/* End of text section */
  _etext = .;			/* End of text section */


  .data : {			/* Data */
  EXCEPTION_TABLE(16) :data
	DATA_DATA
  RW_DATA_SECTION(16, PAGE_SIZE, THREAD_SIZE) :data
	CONSTRUCTORS
	. = ALIGN(16);		/* Exception table */
	__start___ex_table = .;
	*(__ex_table)
	__stop___ex_table = .;
	} :data
  /* End of data goes *here* so that freeing init code works properly. */
  /* End of data goes *here* so that freeing init code works properly. */
  _edata = .;
  _edata = .;
  NOTES
  NOTES
@@ -38,56 +33,21 @@ SECTIONS
  /* will be freed after init */
  /* will be freed after init */
  . = ALIGN(PAGE_SIZE);	/* Init code and data */
  . = ALIGN(PAGE_SIZE);	/* Init code and data */
__init_begin = .;
__init_begin = .;
	.init.text : {
	INIT_TEXT_SECTION(PAGE_SIZE)
		_sinittext = .;
	INIT_DATA_SECTION(16)
		INIT_TEXT
		_einittext = .;
	}
	.init.data : { INIT_DATA }
	. = ALIGN(16);
	__setup_start = .;
	.init.setup : { *(.init.setup) }
	__setup_end = .;
	__initcall_start = .;
	.initcall.init : {
		INITCALLS
	}
	__initcall_end = .;
	__con_initcall_start = .;
	.con_initcall.init : { *(.con_initcall.init) }
	__con_initcall_end = .;
	.m68k_fixup : {
	.m68k_fixup : {
		__start_fixup = .;
		__start_fixup = .;
		*(.m68k_fixup)
		*(.m68k_fixup)
		__stop_fixup = .;
		__stop_fixup = .;
	}
	}
	SECURITY_INIT
#ifdef CONFIG_BLK_DEV_INITRD
	. = ALIGN(PAGE_SIZE);
	__initramfs_start = .;
	.init.ramfs : { *(.init.ramfs) }
	__initramfs_end = .;
#endif
	. = ALIGN(PAGE_SIZE);
	. = ALIGN(PAGE_SIZE);
	__init_end = .;
	__init_end = .;
	.data.init.task : { *(.data.init_task) }



  BSS_SECTION(0, 0, 0)
  .bss : { *(.bss) }		/* BSS */


  _end = . ;
  _end = . ;


  .crap : {
  STABS_DEBUG
	/* Stabs debugging sections.  */
	*(.stab)
	*(.stabstr)
	*(.stab.excl)
	*(.stab.exclstr)
	*(.stab.index)
	*(.stab.indexstr)
	*(.comment)
	*(.note)
  }


  /* Sections to be discarded */
  /* Sections to be discarded */
  DISCARDS
  DISCARDS