]> pilppa.org Git - linux-2.6-omap-h63xx.git/blob - arch/sparc64/kernel/vmlinux.lds.S
Pull sony-2.6.24 into release branch
[linux-2.6-omap-h63xx.git] / arch / sparc64 / kernel / vmlinux.lds.S
1 /* ld script to make UltraLinux kernel */
2
3 #include <asm/page.h>
4 #include <asm-generic/vmlinux.lds.h>
5
6 OUTPUT_FORMAT("elf64-sparc", "elf64-sparc", "elf64-sparc")
7 OUTPUT_ARCH(sparc:v9a)
8 ENTRY(_start)
9
10 jiffies = jiffies_64;
11 SECTIONS
12 {
13   swapper_low_pmd_dir = 0x0000000000402000;
14   . = 0x4000;
15   .text 0x0000000000404000 :
16   {
17     _text = .;
18     TEXT_TEXT
19     SCHED_TEXT
20     LOCK_TEXT
21     KPROBES_TEXT
22     *(.gnu.warning)
23   } =0
24   _etext = .;
25   PROVIDE (etext = .);
26
27   RO_DATA(PAGE_SIZE)
28
29   .data    :
30   {
31     DATA_DATA
32     CONSTRUCTORS
33   }
34   .data1   : { *(.data1) }
35   . = ALIGN(64);
36   .data.cacheline_aligned : { *(.data.cacheline_aligned) }
37   . = ALIGN(64);
38   .data.read_mostly : { *(.data.read_mostly) }
39   _edata  =  .;
40   PROVIDE (edata = .);
41   .fixup   : { *(.fixup) }
42
43   . = ALIGN(16);
44   __start___ex_table = .;
45   __ex_table : { *(__ex_table) }
46   __stop___ex_table = .;
47
48   NOTES
49
50   . = ALIGN(PAGE_SIZE);
51   __init_begin = .;
52   .init.text : { 
53         _sinittext = .;
54         *(.init.text)
55         _einittext = .;
56   }
57   .init.data : { *(.init.data) }
58   . = ALIGN(16);
59   __setup_start = .;
60   .init.setup : { *(.init.setup) }
61   __setup_end = .;
62   __initcall_start = .;
63   .initcall.init : {
64         INITCALLS
65   }
66   __initcall_end = .;
67   __con_initcall_start = .;
68   .con_initcall.init : { *(.con_initcall.init) }
69   __con_initcall_end = .;
70   SECURITY_INIT
71   . = ALIGN(4);
72   __tsb_ldquad_phys_patch = .;
73   .tsb_ldquad_phys_patch : { *(.tsb_ldquad_phys_patch) }
74   __tsb_ldquad_phys_patch_end = .;
75   __tsb_phys_patch = .;
76   .tsb_phys_patch : { *(.tsb_phys_patch) }
77   __tsb_phys_patch_end = .;
78   __cpuid_patch = .;
79   .cpuid_patch : { *(.cpuid_patch) }
80   __cpuid_patch_end = .;
81   __sun4v_1insn_patch = .;
82   .sun4v_1insn_patch : { *(.sun4v_1insn_patch) }
83   __sun4v_1insn_patch_end = .;
84   __sun4v_2insn_patch = .;
85   .sun4v_2insn_patch : { *(.sun4v_2insn_patch) }
86   __sun4v_2insn_patch_end = .;
87
88 #ifdef CONFIG_BLK_DEV_INITRD
89   . = ALIGN(PAGE_SIZE);
90   __initramfs_start = .;
91   .init.ramfs : { *(.init.ramfs) }
92   __initramfs_end = .;
93 #endif
94
95   PERCPU(PAGE_SIZE)
96
97   . = ALIGN(PAGE_SIZE);
98   __init_end = .;
99   __bss_start = .;
100   .sbss      : { *(.sbss) *(.scommon) }
101   .bss       :
102   {
103    *(.dynbss)
104    *(.bss)
105    *(COMMON)
106   }
107   _end = . ;
108   PROVIDE (end = .);
109   /DISCARD/ : { *(.exit.text) *(.exit.data) *(.exitcall.exit) }
110
111   STABS_DEBUG
112
113   DWARF_DEBUG
114 }