ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / arch / h8300 / kernel / vmlinux.lds.S
1 #include <linux/config.h>
2
3 #ifdef CONFIG_H8300H_GENERIC
4 #ifdef CONFIG_ROMKERNEL
5 #include "../platform/h8300h/generic/rom.ld"
6 #endif
7 #ifdef CONFIG_RAMKERNEL
8 #include "../platform/h8300h/generic/ram.ld"
9 #endif
10 #endif
11
12 #ifdef CONFIG_H8300H_AKI3068NET
13 #ifdef CONFIG_ROMKERNEL
14 #include "../platform/h8300h/aki3068net/rom.ld"
15 #endif
16 #ifdef CONFIG_RAMKERNEL
17 #include "../platform/h8300h/aki3068net/ram.ld"
18 #endif
19 #endif
20
21 #ifdef CONFIG_H8300H_H8MAX
22 #ifdef CONFIG_ROMKERNEL
23 #include "../platform/h8300h/h8max/rom.ld"
24 #endif
25 #ifdef CONFIG_RAMKERNEL
26 #include "../platform/h8300h/h8max/ram.ld"
27 #endif
28 #endif
29
30 #ifdef CONFIG_H8300H_SIM
31 #ifdef CONFIG_ROMKERNEL
32 #include "../platform/h8300h/generic/rom.ld"
33 #endif
34 #ifdef CONFIG_RAMKERNEL
35 #include "../platform/h8300h/generic/ram.ld"
36 #endif
37 #endif
38
39 #ifdef CONFIG_H8S_SIM
40 #ifdef CONFIG_ROMKERNEL
41 #include "../platform/h8s/generic/rom.ld"
42 #endif
43 #ifdef CONFIG_RAMKERNEL
44 #include "../platform/h8s/generic/ram.ld"
45 #endif
46 #endif
47
48 #ifdef CONFIG_H8S_EDOSK2674
49 #ifdef CONFIG_ROMKERNEL
50 #include "../platform/h8s/edosk2674/rom.ld"
51 #endif
52 #ifdef CONFIG_RAMKERNEL
53 #include "../platform/h8s/edosk2674/ram.ld"
54 #endif
55 #endif
56
57 #if defined(CONFIG_H8300H_SIM) || defined(CONFIG_H8S_SIM)
58 INPUT(romfs.o)
59 #endif
60
61 _jiffies = _jiffies_64 + 4;
62
63 SECTIONS
64 {
65 #if defined(CONFIG_ROMKERNEL)
66         .vectors :
67         {
68         __vector = . ;
69                 *(.vectors*)
70         } > vector
71 #endif
72 #if defined(CONFIG_RAMKERNEL)
73         .bootvec :
74         {
75                 *(.bootvec)
76         } > ram
77 #endif
78         .text :
79         {
80 #if defined(CONFIG_ROMKERNEL)
81                 *(.int_redirect)
82 #endif
83         __stext = . ;
84                 *(.text)
85         SCHED_TEXT
86         . = ALIGN(0x4) ;
87                 *(.exit.text)
88                 *(.text.*)
89         . = ALIGN(0x4) ;
90                 *(.exitcall.exit)
91         . = ALIGN(0x4) ;
92                 *(.kstrtab)
93         . = ALIGN(0x4) ;
94                 *(.rodata*)
95         . = ALIGN(16);          /* Exception table              */
96         ___start___ex_table = .;
97                 *(__ex_table)
98         ___stop___ex_table = .;
99
100         ___start___ksymtab = .;  /* Kernel symbol table          */
101                  *(__ksymtab)
102         ___stop___ksymtab = .;
103
104         . = ALIGN(0x4) ;
105         __etext = . ;
106 #if defined(CONFIG_ROMKERNEL)
107         } > rom
108 #endif
109 #if defined(CONFIG_RAMKERNEL)
110         } > ram
111 #endif
112         .data : AT( ADDR(.text)+SIZEOF(.text))
113         {
114         __sdata = . ;
115         ___data_start = . ;
116
117         . = ALIGN(0x2000) ;
118                 *(.data.init_task)
119         . = ALIGN(0x4) ;
120                 *(.data)
121         . = ALIGN(0x4) ;
122                 *(.data.*)      
123
124         . = ALIGN(0x4) ;
125         ___init_begin = .;
126         __sinittext = .; 
127                 *(.init.text)
128         __einittext = .; 
129                 *(.init.data)
130         . = ALIGN(0x4) ;
131         ___setup_start = .;
132                 *(.init.setup)
133         . = ALIGN(0x4) ;
134         ___setup_end = .;
135         ___start___param = .;
136                 *(__param)
137         ___stop___param = .;
138         ___initcall_start = .;
139                 *(.initcall1.init)
140                 *(.initcall2.init)
141                 *(.initcall3.init)
142                 *(.initcall4.init)
143                 *(.initcall5.init)
144                 *(.initcall6.init)
145                 *(.initcall7.init)
146         ___initcall_end = .;
147         ___con_initcall_start = .;
148                 *(.con_initcall.init)
149         ___con_initcall_end = .;
150                 . = ALIGN(4);
151         ___initramfs_start = .;
152                 *(.init.ramfs)
153         ___initramfs_end = .;
154         . = ALIGN(0x4) ;
155         ___init_end = .;
156         __edata = . ;
157         } > ram
158         __begin_data = LOADADDR(.data) ;
159 #if defined(CONFIG_ROMKERNEL)
160         .erom :
161         {
162         __erom = . ;
163         } > erom
164 #endif
165         .bss : 
166         {
167         . = ALIGN(0x4) ;
168         __sbss = . ;
169                 *(.bss*)
170         . = ALIGN(0x4) ;
171                 *(COMMON)
172         . = ALIGN(0x4) ;
173         __ebss = . ;
174         __end = . ;
175         __ramstart = .;
176         } > ram
177         .romfs :        
178         {
179                 *(.romfs*)
180         } > ram
181         .dummy :
182         {
183         COMMAND_START = . - 0x200 ;
184         __ramend = . ;
185         } > eram
186 }
187