aboutsummaryrefslogtreecommitdiff
path: root/LPC1114F_301_TQFP48_bootloader/eXodusino_Release.ld
diff options
context:
space:
mode:
authorlynxeyed-atsu <lynxeyed@xj9.so-net.ne.jp>2012-08-09 22:13:57 +0900
committerlynxeyed-atsu <lynxeyed@xj9.so-net.ne.jp>2012-08-09 22:13:57 +0900
commita936b176fe2aae6ac6378b73fcaad1a61cb8eca3 (patch)
treef302e299bc5add3a7117b9f93b993cf741a2ee21 /LPC1114F_301_TQFP48_bootloader/eXodusino_Release.ld
parentb9cff0a1eac16d0351053ab41237a69dfcb3ca5e (diff)
changed MCU settings
We can switch linker script each MCU using Configuration tab of LPCXpresso project's properties.
Diffstat (limited to 'LPC1114F_301_TQFP48_bootloader/eXodusino_Release.ld')
-rw-r--r--LPC1114F_301_TQFP48_bootloader/eXodusino_Release.ld128
1 files changed, 128 insertions, 0 deletions
diff --git a/LPC1114F_301_TQFP48_bootloader/eXodusino_Release.ld b/LPC1114F_301_TQFP48_bootloader/eXodusino_Release.ld
new file mode 100644
index 0000000..187974f
--- /dev/null
+++ b/LPC1114F_301_TQFP48_bootloader/eXodusino_Release.ld
@@ -0,0 +1,128 @@
+/*
+ * GENERATED FILE - DO NOT EDIT
+ * (C) Code Red Technologies Ltd, 2008-2012
+ * Generated linker script file for LPC1114/301
+ * Created from generic_cpp.ld (vLPCXpresso v4.2 (4 [Build 267] [2012-07-11] ))
+ * By LPCXpresso v4.2.4 [Build 267] [2012-07-11] on Fri Jul 13 01:18:22 JST 2012
+ */
+
+
+INCLUDE "eXodusino_Release_lib.ld"
+INCLUDE "eXodusino_Release_mem.ld"
+
+ENTRY(ResetISR)
+
+SECTIONS
+{
+
+ /* MAIN TEXT SECTION */
+ .text : ALIGN(4)
+ {
+ FILL(0xff)
+ KEEP(*(.isr_vector))
+
+ /* Global Section Table */
+ . = ALIGN(4) ;
+ __section_table_start = .;
+ __data_section_table = .;
+ LONG(LOADADDR(.data));
+ LONG( ADDR(.data)) ;
+ LONG( SIZEOF(.data));
+ __data_section_table_end = .;
+ __bss_section_table = .;
+ LONG( ADDR(.bss));
+ LONG( SIZEOF(.bss));
+ __bss_section_table_end = .;
+ __section_table_end = . ;
+ /* End of Global Section Table */
+
+
+ *(.after_vectors*)
+
+ *(.text*)
+ *(.rodata .rodata.*)
+ . = ALIGN(4);
+
+ /* C++ constructors etc */
+ . = ALIGN(4);
+ KEEP(*(.init))
+
+ . = ALIGN(4);
+ __preinit_array_start = .;
+ KEEP (*(.preinit_array))
+ __preinit_array_end = .;
+
+ . = ALIGN(4);
+ __init_array_start = .;
+ KEEP (*(SORT(.init_array.*)))
+ KEEP (*(.init_array))
+ __init_array_end = .;
+
+ KEEP(*(.fini));
+
+ . = ALIGN(0x4);
+ KEEP (*crtbegin.o(.ctors))
+ KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
+ KEEP (*(SORT(.ctors.*)))
+ KEEP (*crtend.o(.ctors))
+
+ . = ALIGN(0x4);
+ KEEP (*crtbegin.o(.dtors))
+ KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
+ KEEP (*(SORT(.dtors.*)))
+ KEEP (*crtend.o(.dtors))
+ /* End C++ */
+ } > MFlash32
+
+ /*
+ * for exception handling/unwind - some Newlib functions (in common
+ * with C++ and STDC++) use this.
+ * Use KEEP so not discarded with --gc-sections
+ */
+ .ARM.extab : ALIGN(4)
+ {
+ KEEP(*(.ARM.extab* .gnu.linkonce.armextab.*))
+ } > MFlash32
+ __exidx_start = .;
+
+ .ARM.exidx : ALIGN(4)
+ {
+ KEEP(*(.ARM.exidx* .gnu.linkonce.armexidx.*))
+ } > MFlash32
+ __exidx_end = .;
+
+ _etext = .;
+
+
+ /* MAIN DATA SECTION */
+
+ .uninit_RESERVED : ALIGN(4)
+ {
+ KEEP(*(.bss.$RESERVED*))
+ } > RamLoc8
+
+ .data : ALIGN(4)
+ {
+ FILL(0xff)
+ _data = .;
+ *(vtable)
+ *(.data*)
+ . = ALIGN(4) ;
+ _edata = .;
+ } > RamLoc8 AT>MFlash32
+
+
+ /* MAIN BSS SECTION */
+ .bss : ALIGN(4)
+ {
+ _bss = .;
+ *(.bss*)
+ *(COMMON)
+ . = ALIGN(4) ;
+ _ebss = .;
+ PROVIDE(end = .);
+ } > RamLoc8
+
+ PROVIDE(_pvHeapStart = .);
+ PROVIDE(_vStackTop = __top_RamLoc8 - 0);
+}