Merge branch 'pm-cpufreq'
[cascardo/linux.git] / arch / alpha / kernel / vmlinux.lds.S
1 #include <asm-generic/vmlinux.lds.h>
2 #include <asm/thread_info.h>
3 #include <asm/cache.h>
4 #include <asm/page.h>
5 #include <asm/setup.h>
6
7 OUTPUT_FORMAT("elf64-alpha")
8 OUTPUT_ARCH(alpha)
9 ENTRY(__start)
10 PHDRS { kernel PT_LOAD; note PT_NOTE; }
11 jiffies = jiffies_64;
12 SECTIONS
13 {
14 #ifdef CONFIG_ALPHA_LEGACY_START_ADDRESS
15         . = 0xfffffc0000310000;
16 #else
17         . = 0xfffffc0001010000;
18 #endif
19
20         _text = .;      /* Text and read-only data */
21         .text : {
22                 HEAD_TEXT
23                 TEXT_TEXT
24                 SCHED_TEXT
25                 CPUIDLE_TEXT
26                 LOCK_TEXT
27                 *(.fixup)
28                 *(.gnu.warning)
29         } :kernel
30         swapper_pg_dir = SWAPPER_PGD;
31         _etext = .;     /* End of text section */
32
33         NOTES :kernel :note
34         .dummy : {
35                 *(.dummy)
36         } :kernel
37
38         RODATA
39         EXCEPTION_TABLE(16)
40
41         /* Will be freed after init */
42         __init_begin = ALIGN(PAGE_SIZE);
43         INIT_TEXT_SECTION(PAGE_SIZE)
44         INIT_DATA_SECTION(16)
45         PERCPU_SECTION(L1_CACHE_BYTES)
46         /* Align to THREAD_SIZE rather than PAGE_SIZE here so any padding page
47            needed for the THREAD_SIZE aligned init_task gets freed after init */
48         . = ALIGN(THREAD_SIZE);
49         __init_end = .;
50         /* Freed after init ends here */
51
52         _sdata = .;     /* Start of rw data section */
53         _data = .;
54         RW_DATA_SECTION(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE)
55
56         .got : {
57                 *(.got)
58         }
59         .sdata : {
60                 *(.sdata)
61         }
62         _edata = .;     /* End of data section */
63
64         BSS_SECTION(0, 0, 0)
65         _end = .;
66
67         .mdebug 0 : {
68                 *(.mdebug)
69         }
70         .note 0 : {
71                 *(.note)
72         }
73
74         STABS_DEBUG
75         DWARF_DEBUG
76
77         DISCARDS
78 }