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

Commit 78d7530a authored by Nelson Elhage's avatar Nelson Elhage Committed by Russell King
Browse files

ARM: Clean up linker script using new linker script macros.



This patch is mostly a straightforward translation. The primary side
effect to the resulting vmlinux should be to increase the alignment on
the initramfs to the standard PAGE_SIZE from 32 bytes.

Signed-off-by: default avatarNelson Elhage <nelhage@ksplice.com>
Signed-off-by: default avatarTim Abbott <tabbott@ksplice.com>
Acked-by: default avatarSam Ravnborg <sam@ravnborg.org>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 2abc1c50
Loading
Loading
Loading
Loading
+23 −54
Original line number Diff line number Diff line
@@ -40,42 +40,30 @@ SECTIONS
		__tagtable_begin = .;
			*(.taglist.init)
		__tagtable_end = .;
		. = ALIGN(16);
		__setup_start = .;
			*(.init.setup)
		__setup_end = .;

		INIT_SETUP(16)

		__early_begin = .;
			*(.early_param.init)
		__early_end = .;
		__initcall_start = .;
			INITCALLS
		__initcall_end = .;
		__con_initcall_start = .;
			*(.con_initcall.init)
		__con_initcall_end = .;
		__security_initcall_start = .;
			*(.security_initcall.init)
		__security_initcall_end = .;
#ifdef CONFIG_BLK_DEV_INITRD
		. = ALIGN(32);
		__initramfs_start = .;
			usr/built-in.o(.init.ramfs)
		__initramfs_end = .;
#endif
		. = ALIGN(PAGE_SIZE);
		__per_cpu_load = .;
		__per_cpu_start = .;
			*(.data.percpu.page_aligned)
			*(.data.percpu)
			*(.data.percpu.shared_aligned)
		__per_cpu_end = .;

		INIT_CALLS
		CON_INITCALL
		SECURITY_INITCALL
		INIT_RAM_FS

#ifndef CONFIG_XIP_KERNEL
		__init_begin = _stext;
		INIT_DATA
#endif
	}

	PERCPU(PAGE_SIZE)

#ifndef CONFIG_XIP_KERNEL
	. = ALIGN(PAGE_SIZE);
	__init_end = .;
#endif
	}

	/DISCARD/ : {			/* Exit code and data		*/
		EXIT_TEXT
@@ -155,7 +143,7 @@ SECTIONS
		 * first, the init task union, aligned
		 * to an 8192 byte boundary.
		 */
		*(.data.init_task)
		INIT_TASK_DATA(THREAD_SIZE)

#ifdef CONFIG_XIP_KERNEL
		. = ALIGN(PAGE_SIZE);
@@ -165,17 +153,8 @@ SECTIONS
		__init_end = .;
#endif

		. = ALIGN(PAGE_SIZE);
		__nosave_begin = .;
		*(.data.nosave)
		. = ALIGN(PAGE_SIZE);
		__nosave_end = .;

		/*
		 * then the cacheline aligned data
		 */
		. = ALIGN(32);
		*(.data.cacheline_aligned)
		NOSAVE_DATA
		CACHELINE_ALIGNED_DATA(32)

		/*
		 * The exception fixup table (might need resorting at runtime)
@@ -254,20 +233,10 @@ SECTIONS
	}
#endif

	.bss : {
		__bss_start = .;	/* BSS				*/
		*(.bss)
		*(COMMON)
		__bss_stop = .;
	BSS_SECTION(0, 0, 0)
	_end = .;
	}
					/* Stabs debugging sections.	*/
	.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) }

	STABS_DEBUG
	.comment 0 : { *(.comment) }
}