-/***********************************************************************/\r
-/* This file is part of the ARM Compiler package */\r
-/* Copyright KEIL ELEKTRONIK GmbH 1992-2004 */\r
-/***********************************************************************/\r
-/* */\r
-/* TARGET.LD: Linker Script File */\r
-/* */\r
-/***********************************************************************/\r
+/***\r
+ * LPC21xx RAM with <0x40000120;0x40000200) hole\r
+ * used by ISP or CAN bootloader\r
+ ***/\r
\r
-/* Memory Definitions */\r
+STARTUP(crt0.o)\r
+ENTRY(_start)\r
+STACK_SIZE = 0x400;\r
\r
+/* Memory Definitions */\r
MEMORY\r
{\r
RAML (rw) : ORIGIN = 0x40000000, LENGTH = 0x00000120\r
- RAMH (rw) : ORIGIN = 0x40000200, LENGTH = 0x00003e00\r
- /*RAMH (rw) : ORIGIN = 0x40001100, LENGTH = 0x00000f00*/\r
+ RAMH (rw) : ORIGIN = 0x40000200, LENGTH = 0x00004000\r
}\r
\r
-STARTUP(crt0mp.o)\r
-\r
/* Section Definitions */\r
\r
SECTIONS\r
{\r
.ivec :\r
{\r
- *(.ivec) /* remaining code */\r
+ *(.ivec) /* interrupt entry points */\r
} > RAML\r
\r
/* first section is .text which is used for code */\r
.text :\r
{\r
- /* *crt0mp.o (.text) */ /* Startup code */\r
+ *crt0.o (.text) /* Startup code */\r
*(.text) /* remaining code */\r
- *(.rodata)\r
+ *(.rodata) /* read-only data (constants) */\r
*(.rodata*)\r
*(.glue_7)\r
*(.glue_7t)\r
/* .data section which is used for initialized data */\r
.data :\r
{\r
- _data = . ;\r
+ _data = .;\r
*(.data)\r
} > RAMH\r
\r
. = ALIGN(4);\r
_edata = . ;\r
- PROVIDE (edata = .);\r
+ PROVIDE (edata = .);\r
\r
/* .bss section which is used for uninitialized data */\r
.bss (NOLOAD) :\r
__bss_start__ = . ;\r
*(.bss)\r
*(COMMON)\r
+ . = ALIGN(4);\r
} > RAMH\r
\r
. = ALIGN(4);\r
__bss_end__ = . ;\r
- __bss_end__ = . ;\r
- _end = .;\r
+ PROVIDE (__bss_end = .);\r
+\r
+ .stack ALIGN(256) :\r
+ {\r
+ . += STACK_SIZE;\r
+ PROVIDE (_stack = .);\r
+ } > RAMH\r
+\r
+ _end = . ;\r
PROVIDE (end = .);\r
\r
/* Stabs debugging sections. */\r