Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6
[linux-2.6] / arch / xtensa / boot / boot-elf / boot.lds.S
1 #include <asm/variant/core.h>
2 OUTPUT_ARCH(xtensa)
3 ENTRY(_ResetVector)
4
5 SECTIONS
6 {
7         .start 0xD0000000 : { *(.start) }
8
9         .text 0xD0000000:
10         {
11                 __reloc_start = . ;
12                 _text_start = . ;
13                 *(.literal .text.literal .text)
14                 _text_end = . ;
15         }
16
17         .rodata ALIGN(0x04):
18         {
19                 *(.rodata)
20                 *(.rodata1)
21         }
22
23         .data ALIGN(0x04):
24         {
25                 *(.data)
26                 *(.data1)
27                 *(.sdata)
28                 *(.sdata2)
29                 *(.got.plt)
30                 *(.got)
31                 *(.dynamic)
32         }
33
34         __reloc_end = . ;
35
36         .initrd ALIGN(0x10) :
37         {
38                 boot_initrd_start = . ;
39                 *(.initrd)
40                 boot_initrd_end = .;
41         }
42
43         . = ALIGN(0x10);
44         __image_load = . ;
45         .image 0xd0001000:
46         {
47                 _image_start = .;
48                 *(image)
49                 . = (. + 3) & ~ 3;
50                 _image_end = .  ;
51         }
52
53
54         .bss ((LOADADDR(.image) + SIZEOF(.image) + 3) & ~ 3):
55         {
56                 __bss_start = .;
57                 *(.sbss)
58                 *(.scommon)
59                 *(.dynbss)
60                 *(.bss)
61                 __bss_end = .;
62         }
63         _end = .;
64         _param_start = .;
65
66         .ResetVector.text XCHAL_RESET_VECTOR_VADDR :
67         {
68                 *(.ResetVector.text)
69         }
70
71
72         PROVIDE (end = .);
73 }