xref: /kvm-unit-tests/s390x/flat.lds.S (revision 9455416be28fc92f749f385c8d0a45d305498d7c)
1#include <asm/asm-offsets.h>
2
3SECTIONS
4{
5	.lowcore : {
6		/*
7		 * Initial short psw for disk boot, with 31 bit addressing for
8		 * non z/Arch environment compatibility and the instruction
9		 * address 0x10000 (cstart64.S .init).
10		 */
11		. = 0;
12		lowcore = .;
13		 LONG(0x00080000)
14		 LONG(0x80010000)
15		 /* Restart new PSW for booting via PSW restart. */
16		 . = 0x1a0;
17		 QUAD(0x0000000180000000)
18		 QUAD(0x0000000000010000)
19	}
20	. = 0x10000;
21	.text : {
22		*(.init)
23		. = 0x480;
24		ipl_args = .;
25		.  = 0x1000;
26		*(.text)
27		*(.text.*)
28	}
29	. = ALIGN(4K);
30	etext = .;
31	.data : {
32		*(.data)
33		*(.data.rel*)
34	}
35	. = ALIGN(16);
36	.rodata : { *(.rodata) *(.rodata.*) }
37	. = ALIGN(16);
38	__bss_start = .;
39	.bss : { *(.bss) }
40	. = ALIGN(2);
41	__bss_end = .;
42	. = ALIGN(4K);
43	edata = .;
44	/* Reserve 64K for the stack */
45	. += 64K;
46	. = ALIGN(4K);
47	/*
48	 * stackptr set with initial stack frame preallocated
49	 */
50	stackptr = . - STACK_FRAME_SIZE;
51	stacktop = .;
52}
53