Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / arch / metag / kernel / vmlinux.lds.S
1 /* ld script to make Meta Linux kernel */
2
3 #include <asm/thread_info.h>
4 #include <asm/page.h>
5 #include <asm/cache.h>
6
7 #include <asm-generic/vmlinux.lds.h>
8
9 OUTPUT_FORMAT("elf32-metag", "elf32-metag", "elf32-metag")
10 OUTPUT_ARCH(metag)
11 ENTRY(__start)
12
13 _jiffies = _jiffies_64;
14 SECTIONS
15 {
16   . = CONFIG_PAGE_OFFSET;
17   _text = .;
18   __text = .;
19   __stext = .;
20   HEAD_TEXT_SECTION
21   .text : {
22         TEXT_TEXT
23         SCHED_TEXT
24         LOCK_TEXT
25         KPROBES_TEXT
26         IRQENTRY_TEXT
27         *(.text.*)
28         *(.gnu.warning)
29         }
30
31   __etext = .;                  /* End of text section */
32
33   __sdata = .;
34   RO_DATA_SECTION(PAGE_SIZE)
35   RW_DATA_SECTION(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE)
36   __edata = .;                  /* End of data section */
37
38   EXCEPTION_TABLE(16)
39   NOTES
40
41   . = ALIGN(PAGE_SIZE);         /* Init code and data */
42   ___init_begin = .;
43   INIT_TEXT_SECTION(PAGE_SIZE)
44   INIT_DATA_SECTION(16)
45
46   .init.arch.info : {
47           ___arch_info_begin = .;
48           *(.arch.info.init)
49           ___arch_info_end = .;
50   }
51
52   PERCPU_SECTION(L1_CACHE_BYTES)
53
54   ___init_end = .;
55
56   BSS_SECTION(0, PAGE_SIZE, 0)
57
58   __end = .;
59
60   . = ALIGN(PAGE_SIZE);
61   __heap_start = .;
62
63   DWARF_DEBUG
64
65   /* When something in the kernel is NOT compiled as a module, the
66    * module cleanup code and data are put into these segments.  Both
67    * can then be thrown away, as cleanup code is never called unless
68    * it's a module.
69    */
70   DISCARDS
71 }