GNU Linux-libre 4.9.317-gnu1
[releases.git] / arch / m68k / kernel / vmlinux-sun3.lds
1 /* ld script to make m68k Linux kernel */
2
3 #include <asm-generic/vmlinux.lds.h>
4 #include <asm/page.h>
5 #include <asm/thread_info.h>
6
7 OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
8 OUTPUT_ARCH(m68k)
9 ENTRY(_start)
10 jiffies = jiffies_64 + 4;
11 SECTIONS
12 {
13   . = 0xE002000;
14   _text = .;                    /* Text and read-only data */
15   .text : {
16         HEAD_TEXT
17         TEXT_TEXT
18         IRQENTRY_TEXT
19         SOFTIRQENTRY_TEXT
20         SCHED_TEXT
21         CPUIDLE_TEXT
22         LOCK_TEXT
23         *(.fixup)
24         *(.gnu.warning)
25         } :text = 0x4e75
26         RODATA
27
28   _etext = .;                   /* End of text section */
29
30   EXCEPTION_TABLE(16) :data
31   _sdata = .;                   /* Start of rw data section */
32   RW_DATA_SECTION(16, PAGE_SIZE, THREAD_SIZE) :data
33   /* End of data goes *here* so that freeing init code works properly. */
34   _edata = .;
35   NOTES
36
37   /* will be freed after init */
38   . = ALIGN(PAGE_SIZE); /* Init code and data */
39 __init_begin = .;
40         INIT_TEXT_SECTION(PAGE_SIZE)
41         INIT_DATA_SECTION(16)
42         .m68k_fixup : {
43                 __start_fixup = .;
44                 *(.m68k_fixup)
45                 __stop_fixup = .;
46         }
47         . = ALIGN(PAGE_SIZE);
48         __init_end = .;
49
50   BSS_SECTION(0, 0, 0)
51
52   _end = . ;
53
54   STABS_DEBUG
55
56   /* Sections to be discarded */
57   DISCARDS
58 }