]> rtime.felk.cvut.cz Git - lincan.git/blob - embedded/board/arm/ul_usb1/libs/ldscripts/lpc2148.ld-app
Merge master into can-usb1 branch to include proc update for 3.12+ kernels.
[lincan.git] / embedded / board / arm / ul_usb1 / libs / ldscripts / lpc2148.ld-app
1 /***********************************************************************/
2 /*                                                                     */
3 /*  ROM.ld:  Linker Script File                                        */
4 /*                                                                     */
5 /***********************************************************************/
6 ENTRY(_startup)
7
8 INCLUDE "lpc2148.ld-cfg"
9
10 STARTUP(startup.o) 
11
12 PROVIDE (_setup_board = 0);
13 PROVIDE (_mem_app_start = 0);
14
15 /* Section Definitions */
16 SECTIONS
17 {
18
19   /* first section is .text which is used for code */
20   .text :
21   {
22     . = ALIGN(4);
23     *(.text)                                    /* main code */
24     *(.stub .text.* .gnu.linkonce.t.*)          /* remaining code */
25     *(.rodata .rodata.* .gnu.linkonce.r.*)      /* read-only data */
26     *(.rodata*)
27     *(.glue_7t)
28     *(.glue_7)
29     *(.vfp11_veneer)
30     *(.v4_bx)
31     . = ALIGN( 4 ) ;
32     _etext = . ;
33   } > FLASHAPP
34
35   .keyval :
36   {
37     PROVIDE (_keyval_start = .);
38     PROVIDE (_keyval_page_len = KEYVAL_PAGE_LEN );
39   }> KEYVAL
40
41   /* .data section which is used for initialized data */
42 /*  .data : AT (_etext)\r*/
43   .data :
44           AT ( ADDR( .text ) + SIZEOF( .text ) )
45   {
46     . = ALIGN(4);
47     _data = .;
48     KEEP( *(.ivt) )
49     KEEP( *(.ivt.stub) )
50     *(.data .data.* .gnu.linkonce.d.*)
51     . = ALIGN( 4 ) ;
52     _edata = . ;
53   } > RAM
54  
55   /* .bss section which is used for uninitialized data */
56   .bss (NOLOAD) :
57   {
58     . = ALIGN(4);
59     __bss_start = . ;
60     __bss_start__ = . ;
61     *(.bss .bss.*)
62     *(COMMON)
63     . = ALIGN( 4 ) ;
64     __bss_end__ = . ;
65     end = . ;
66     _end = . ;
67   } > RAM
68
69   .stack :
70   {
71     _stack = .;
72   } > STACK
73
74   /* Stabs debugging sections.  */
75   .stab          0 : { *(.stab) }
76   .stabstr       0 : { *(.stabstr) }
77   .stab.excl     0 : { *(.stab.excl) }
78   .stab.exclstr  0 : { *(.stab.exclstr) }
79   .stab.index    0 : { *(.stab.index) }
80   .stab.indexstr 0 : { *(.stab.indexstr) }
81   .comment       0 : { *(.comment) }
82   /* DWARF debug sections.
83      Symbols in the DWARF debugging sections are relative to the beginning
84      of the section so we begin them at 0.  */
85   /* DWARF 1 */
86   .debug          0 : { *(.debug) }
87   .line           0 : { *(.line) }
88   /* GNU DWARF 1 extensions */
89   .debug_srcinfo  0 : { *(.debug_srcinfo) }
90   .debug_sfnames  0 : { *(.debug_sfnames) }
91   /* DWARF 1.1 and DWARF 2 */
92   .debug_aranges  0 : { *(.debug_aranges) }
93   .debug_pubnames 0 : { *(.debug_pubnames) }
94   /* DWARF 2 */
95   .debug_info     0 : { *(.debug_info .gnu.linkonce.wi.*) }
96   .debug_abbrev   0 : { *(.debug_abbrev) }
97   .debug_line     0 : { *(.debug_line) }
98   .debug_frame    0 : { *(.debug_frame) }
99   .debug_str      0 : { *(.debug_str) }
100   .debug_loc      0 : { *(.debug_loc) }
101   .debug_macinfo  0 : { *(.debug_macinfo) }
102   /* SGI/MIPS DWARF 2 extensions */
103   .debug_weaknames 0 : { *(.debug_weaknames) }
104   .debug_funcnames 0 : { *(.debug_funcnames) }
105   .debug_typenames 0 : { *(.debug_typenames) }
106   .debug_varnames  0 : { *(.debug_varnames) }
107 }