Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* ld script to make m68k Linux kernel */ |
2 | ||
3 | #include <asm-generic/vmlinux.lds.h> | |
97d26e73 | 4 | #include <asm/page.h> |
1da177e4 LT |
5 | |
6 | OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k") | |
7 | OUTPUT_ARCH(m68k) | |
8 | ENTRY(_start) | |
9 | jiffies = jiffies_64 + 4; | |
10 | SECTIONS | |
11 | { | |
a3a79bd7 | 12 | . = 0xE002000; |
1da177e4 LT |
13 | _text = .; /* Text and read-only data */ |
14 | .text : { | |
6f335cab | 15 | HEAD_TEXT |
7664709b | 16 | TEXT_TEXT |
1da177e4 | 17 | SCHED_TEXT |
198a4101 | 18 | LOCK_TEXT |
1da177e4 LT |
19 | *(.fixup) |
20 | *(.gnu.warning) | |
21 | } :text = 0x4e75 | |
22 | RODATA | |
23 | ||
24 | _etext = .; /* End of text section */ | |
25 | ||
26 | .data : { /* Data */ | |
ca967258 | 27 | DATA_DATA |
1da177e4 LT |
28 | CONSTRUCTORS |
29 | . = ALIGN(16); /* Exception table */ | |
30 | __start___ex_table = .; | |
31 | *(__ex_table) | |
32 | __stop___ex_table = .; | |
33 | } :data | |
34 | /* End of data goes *here* so that freeing init code works properly. */ | |
35 | _edata = .; | |
877d5243 | 36 | NOTES |
1da177e4 LT |
37 | |
38 | /* will be freed after init */ | |
97d26e73 | 39 | . = ALIGN(PAGE_SIZE); /* Init code and data */ |
1da177e4 LT |
40 | __init_begin = .; |
41 | .init.text : { | |
42 | _sinittext = .; | |
01ba2bdc | 43 | INIT_TEXT |
1da177e4 LT |
44 | _einittext = .; |
45 | } | |
01ba2bdc | 46 | .init.data : { INIT_DATA } |
1da177e4 LT |
47 | . = ALIGN(16); |
48 | __setup_start = .; | |
49 | .init.setup : { *(.init.setup) } | |
50 | __setup_end = .; | |
51 | __initcall_start = .; | |
52 | .initcall.init : { | |
5fdb51a1 | 53 | INITCALLS |
1da177e4 LT |
54 | } |
55 | __initcall_end = .; | |
56 | __con_initcall_start = .; | |
57 | .con_initcall.init : { *(.con_initcall.init) } | |
58 | __con_initcall_end = .; | |
fbe9c961 RZ |
59 | .m68k_fixup : { |
60 | __start_fixup = .; | |
61 | *(.m68k_fixup) | |
62 | __stop_fixup = .; | |
63 | } | |
1da177e4 | 64 | SECURITY_INIT |
67d38229 | 65 | #ifdef CONFIG_BLK_DEV_INITRD |
97d26e73 | 66 | . = ALIGN(PAGE_SIZE); |
1da177e4 LT |
67 | __initramfs_start = .; |
68 | .init.ramfs : { *(.init.ramfs) } | |
69 | __initramfs_end = .; | |
67d38229 | 70 | #endif |
97d26e73 | 71 | . = ALIGN(PAGE_SIZE); |
1da177e4 | 72 | __init_end = .; |
54a5a6eb | 73 | .data.init.task : { *(.data.init_task) } |
1da177e4 LT |
74 | |
75 | ||
76 | .bss : { *(.bss) } /* BSS */ | |
77 | ||
78 | _end = . ; | |
79 | ||
80 | /* Sections to be discarded */ | |
81 | /DISCARD/ : { | |
01ba2bdc SR |
82 | EXIT_TEXT |
83 | EXIT_DATA | |
1da177e4 LT |
84 | *(.exitcall.exit) |
85 | } | |
86 | ||
87 | .crap : { | |
88 | /* Stabs debugging sections. */ | |
89 | *(.stab) | |
90 | *(.stabstr) | |
91 | *(.stab.excl) | |
92 | *(.stab.exclstr) | |
93 | *(.stab.index) | |
94 | *(.stab.indexstr) | |
95 | *(.comment) | |
96 | *(.note) | |
97 | } | |
98 | ||
99 | } |