1 /* SPDX-License-Identifier: BSD-3-Clause */
3 /******************************************************************************
5 * Copyright (C) 2017-2018 Texas Instruments Incorporated - http://www.ti.com/
7 ******************************************************************************/
10 MAIN_FLASH (RX) : ORIGIN = 0x00000000, LENGTH = 0x00100000
11 SRAM_CODE_0(RWX): ORIGIN = 0x20000000, LENGTH = 0x00000110
12 SRAM_CODE_1(RWX): ORIGIN = 0x20000110, LENGTH = 0x00000030
13 SRAM_CODE_2(RWX): ORIGIN = 0x20000150, LENGTH = 0x00000040
14 SRAM_CODE_3(RWX): ORIGIN = 0x20000190, LENGTH = 0x00000F70
15 SRAM_CODE_4(RWX): ORIGIN = 0x20001170, LENGTH = 0x00000200
16 SRAM_DATA (RW) : ORIGIN = 0x20002000, LENGTH = 0x00001000
19 REGION_ALIAS("REGION_INTVECT", SRAM_CODE_0);
20 REGION_ALIAS("REGION_RESET", SRAM_CODE_1);
21 REGION_ALIAS("REGION_DESCRIPTOR", SRAM_CODE_2);
22 REGION_ALIAS("REGION_TEXT", SRAM_CODE_3);
23 REGION_ALIAS("REGION_BSS", SRAM_CODE_3);
24 REGION_ALIAS("REGION_DATA", SRAM_DATA);
25 REGION_ALIAS("REGION_STACK", SRAM_CODE_4);
26 REGION_ALIAS("REGION_HEAP", SRAM_DATA);
27 REGION_ALIAS("REGION_ARM_EXIDX", SRAM_CODE_3);
28 REGION_ALIAS("REGION_ARM_EXTAB", SRAM_CODE_3);
31 /* section for the interrupt vector area */
36 PROVIDE (_vtable_base_address =
37 DEFINED(_vtable_base_address) ? _vtable_base_address : 0x20000000);
39 .vtable (_vtable_base_address) : AT (_vtable_base_address) {
45 . = ORIGIN(REGION_DESCRIPTOR) + LENGTH(REGION_DESCRIPTOR) - 1;
52 } > REGION_RESET AT> REGION_RESET
63 __init_array_start = .;
64 KEEP (*(.init_array*))
68 } > REGION_TEXT AT> REGION_TEXT
73 } > REGION_TEXT AT> REGION_TEXT
77 *(.ARM.exidx* .gnu.linkonce.armexidx.*)
79 } > REGION_ARM_EXIDX AT> REGION_ARM_EXIDX
82 KEEP (*(.ARM.extab* .gnu.linkonce.armextab.*))
83 } > REGION_ARM_EXTAB AT> REGION_ARM_EXTAB
88 __data_load__ = LOADADDR (.data);
94 } > REGION_DATA AT> REGION_TEXT
104 } > REGION_BSS AT> REGION_BSS
108 end = __heap_start__;
113 __HeapLimit = __heap_end__;
114 } > REGION_HEAP AT> REGION_HEAP
116 .stack (NOLOAD) : ALIGN(0x8) {
119 } > REGION_STACK AT> REGION_STACK
121 __stack_top = ORIGIN(REGION_STACK) + LENGTH(REGION_STACK);
122 PROVIDE(__stack = __stack_top);