1 /*Based on following file*/
3 * GENERATED FILE - DO NOT EDIT
4 * (c) Code Red Technologies Ltd, 2008-13
5 * (c) NXP Semiconductors 2013-2014
6 * Generated linker script file for LPC11U68
7 * Created from LibIncTemplate.ld (LPCXpresso v7.2 (0 [Build 153] [2014-05-19] ))
8 * By LPCXpresso v7.2.0 [Build 153] [2014-05-19] on Sat Jun 14 15:26:54 JST 2014
13 /* Define each memory region */
14 MFlash256 (rx) : ORIGIN = 0x0, LENGTH = 0x40000 /* 256K bytes */
15 Ram0_32 (rwx) : ORIGIN = 0x10000000+0x100, LENGTH = 0x8000-0x100 /* 32K bytes */
16 Ram1_2 (rwx) : ORIGIN = 0x20000000, LENGTH = 0x800 /* 2K bytes */
17 Ram2USB_2 (rwx) : ORIGIN = 0x20004000, LENGTH = 0x800 /* 2K bytes */
21 /* Define a symbol for the top of each memory region */
22 __top_MFlash256 = 0x0 + 0x40000;
23 __top_Ram0_32 = 0x10000000 + 0x8000;
24 __top_Ram1_2 = 0x20000000 + 0x800;
25 __top_Ram2USB_2 = 0x20004000 + 0x800;
32 /* MAIN TEXT SECTION */
36 __vectors_start__ = ABSOLUTE(.) ;
39 /* Global Section Table */
41 __section_table_start = .;
42 __data_section_table = .;
43 LONG(LOADADDR(.data));
46 LONG(LOADADDR(.data_RAM2));
47 LONG( ADDR(.data_RAM2));
48 LONG( SIZEOF(.data_RAM2));
49 LONG(LOADADDR(.data_RAM3));
50 LONG( ADDR(.data_RAM3));
51 LONG( SIZEOF(.data_RAM3));
52 __data_section_table_end = .;
53 __bss_section_table = .;
56 LONG( ADDR(.bss_RAM2));
57 LONG( SIZEOF(.bss_RAM2));
58 LONG( ADDR(.bss_RAM3));
59 LONG( SIZEOF(.bss_RAM3));
60 __bss_section_table_end = .;
61 __section_table_end = . ;
62 /* End of Global Section Table */
71 /* C++ constructors etc */
76 __preinit_array_start = .;
77 KEEP (*(.preinit_array))
78 __preinit_array_end = .;
81 __init_array_start = .;
82 KEEP (*(SORT(.init_array.*)))
89 KEEP (*crtbegin.o(.ctors))
90 KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
91 KEEP (*(SORT(.ctors.*)))
92 KEEP (*crtend.o(.ctors))
95 KEEP (*crtbegin.o(.dtors))
96 KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
97 KEEP (*(SORT(.dtors.*)))
98 KEEP (*crtend.o(.dtors))
102 * for exception handling/unwind - some Newlib functions (in common
103 * with C++ and STDC++) use this.
105 .ARM.extab : ALIGN(4)
107 *(.ARM.extab* .gnu.linkonce.armextab.*)
111 .ARM.exidx : ALIGN(4)
113 *(.ARM.exidx* .gnu.linkonce.armexidx.*)
119 /* possible MTB section for Ram1_2 */
120 .mtb_buffer_RAM2 (NOLOAD) :
123 KEEP(*(.mtb.$RAM1_2*))
126 /* DATA section for Ram1_2 */
127 .data_RAM2 : ALIGN(4)
135 } > Ram1_2 AT>MFlash256
136 /* possible MTB section for Ram2USB_2 */
137 .mtb_buffer_RAM3 (NOLOAD) :
140 KEEP(*(.mtb.$RAM2USB_2*))
143 /* DATA section for Ram2USB_2 */
144 .data_RAM3 : ALIGN(4)
148 *(.ramfunc.$Ram2USB_2)
152 } > Ram2USB_2 AT>MFlash256
154 /* MAIN DATA SECTION */
156 /* Default MTB section */
157 .mtb_buffer_default (NOLOAD) :
162 .uninit_RESERVED : ALIGN(4)
164 KEEP(*(.bss.$RESERVED*))
166 _end_uninit_RESERVED = .;
170 /* Main DATA section (Ram0_32) */
180 } > Ram0_32 AT>MFlash256
182 /* BSS section for Ram1_2 */
189 /* BSS section for Ram2USB_2 */
197 /* MAIN BSS SECTION */
209 /* NOINIT section for Ram1_2 */
210 .noinit_RAM2 (NOLOAD) : ALIGN(4)
216 /* NOINIT section for Ram2USB_2 */
217 .noinit_RAM3 (NOLOAD) : ALIGN(4)
220 *(.noinit.$Ram2USB_2*)
224 /* DEFAULT NOINIT SECTION */
225 .noinit (NOLOAD): ALIGN(4)
233 PROVIDE(_pvHeapStart = .);
234 PROVIDE(_vStackTop = __top_Ram0_32 - 0);