1 /* SPDX-License-Identifier: BSD-3-Clause */
3 /******************************************************************************
5 * Copyright (C) 2012-2018 Texas Instruments Incorporated - http://www.ti.com/
7 ******************************************************************************/
10 MAIN_FLASH (RX) : ORIGIN = 0x00000000, LENGTH = 0x00200000
11 INFO_FLASH (RX) : ORIGIN = 0x00200000, LENGTH = 0x00008000
12 SRAM_CODE_0(RWX): ORIGIN = 0x01000000, LENGTH = 0x00000110
13 SRAM_CODE_1(RWX): ORIGIN = 0x01000110, LENGTH = 0x00000030
14 SRAM_CODE_2(RWX): ORIGIN = 0x01000150, LENGTH = 0x00000040
15 SRAM_CODE_3(RWX): ORIGIN = 0x01000190, LENGTH = 0x00001E70
16 SRAM_CODE_4(RWX): ORIGIN = 0x01002000, LENGTH = 0x00000200
17 SRAM_DATA (RW) : ORIGIN = 0x20002000, LENGTH = 0x00001000
20 REGION_ALIAS("REGION_INTVECT", SRAM_CODE_0);
21 REGION_ALIAS("REGION_RESET", SRAM_CODE_1);
22 REGION_ALIAS("REGION_DESCRIPTOR", SRAM_CODE_2);
23 REGION_ALIAS("REGION_TEXT", SRAM_CODE_3);
24 REGION_ALIAS("REGION_BSS", SRAM_CODE_3);
25 REGION_ALIAS("REGION_DATA", SRAM_DATA);
26 REGION_ALIAS("REGION_STACK", SRAM_CODE_4);
27 REGION_ALIAS("REGION_HEAP", SRAM_DATA);
28 REGION_ALIAS("REGION_ARM_EXIDX", SRAM_CODE_3);
29 REGION_ALIAS("REGION_ARM_EXTAB", SRAM_CODE_3);
32 /* section for the interrupt vector area */
37 PROVIDE (_vtable_base_address =
38 DEFINED(_vtable_base_address) ? _vtable_base_address : 0x20000000);
40 .vtable (_vtable_base_address) : AT (_vtable_base_address) {
46 . = ORIGIN(REGION_DESCRIPTOR) + LENGTH(REGION_DESCRIPTOR) - 1;
53 } > REGION_RESET AT> REGION_RESET
64 __init_array_start = .;
65 KEEP (*(.init_array*))
69 } > REGION_TEXT AT> REGION_TEXT
74 } > REGION_TEXT AT> REGION_TEXT
78 *(.ARM.exidx* .gnu.linkonce.armexidx.*)
80 } > REGION_ARM_EXIDX AT> REGION_ARM_EXIDX
83 KEEP (*(.ARM.extab* .gnu.linkonce.armextab.*))
84 } > REGION_ARM_EXTAB AT> REGION_ARM_EXTAB
89 __data_load__ = LOADADDR (.data);
95 } > REGION_DATA AT> REGION_TEXT
105 } > REGION_BSS AT> REGION_BSS
109 end = __heap_start__;
114 __HeapLimit = __heap_end__;
115 } > REGION_HEAP AT> REGION_HEAP
117 .stack (NOLOAD) : ALIGN(0x8) {
120 } > REGION_STACK AT> REGION_STACK
122 __stack_top = ORIGIN(REGION_STACK) + LENGTH(REGION_STACK);
123 PROVIDE(__stack = __stack_top);