x86/efi: Enforce CONFIG_RELOCATABLE for EFI boot stub
[linux/fpc-iii.git] / arch / metag / kernel / vmlinux.lds.S
blobe12055e88bfe5e55b6092dbf3cf95dd63eb08cdd
1 /* ld script to make Meta Linux kernel */
3 #include <asm/thread_info.h>
4 #include <asm/page.h>
5 #include <asm/cache.h>
7 #include <asm-generic/vmlinux.lds.h>
9 OUTPUT_FORMAT("elf32-metag", "elf32-metag", "elf32-metag")
10 OUTPUT_ARCH(metag)
11 ENTRY(__start)
13 _jiffies = _jiffies_64;
14 SECTIONS
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         }
31   __etext = .;                  /* End of text section */
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 */
38   EXCEPTION_TABLE(16)
39   NOTES
41   . = ALIGN(PAGE_SIZE);         /* Init code and data */
42   ___init_begin = .;
43   INIT_TEXT_SECTION(PAGE_SIZE)
44   INIT_DATA_SECTION(16)
46   .init.arch.info : {
47           ___arch_info_begin = .;
48           *(.arch.info.init)
49           ___arch_info_end = .;
50   }
52   PERCPU_SECTION(L1_CACHE_BYTES)
54   ___init_end = .;
56   BSS_SECTION(0, PAGE_SIZE, 0)
58   __end = .;
60   . = ALIGN(PAGE_SIZE);
61   __heap_start = .;
63   DWARF_DEBUG
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