Skip to content

Commit c5ad5f6

Browse files
author
deepikabhavnani
committed
Target_Freescale:Add heap section
1 parent f518a69 commit c5ad5f6

File tree

11 files changed

+54
-77
lines changed

11 files changed

+54
-77
lines changed

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K66F/device/TOOLCHAIN_ARM_STD/MK66FN2M0xxx18.sct

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -92,12 +92,6 @@
9292
#define Stack_Size MBED_BOOT_STACK_SIZE
9393
#endif
9494

95-
#if (defined(__heap_size__))
96-
#define Heap_Size __heap_size__
97-
#else
98-
#define Heap_Size 0x0400
99-
#endif
100-
10195
LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region
10296
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
10397
* (RESET,+FIRST)
@@ -122,10 +116,12 @@ LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; lo
122116
RW_m_data m_data_start m_data_size { ; RW data
123117
.ANY (+RW +ZI)
124118
}
125-
RW_m_data_2 m_data_2_start m_data_2_size-Stack_Size-Heap_Size { ; RW data
119+
RW_m_data_2 m_data_2_start m_data_2_size { ; RW data
126120
.ANY (+RW +ZI)
127121
}
128-
RW_IRAM1 ImageLimit(RW_m_data_2) { ; Heap region growing up
122+
RW_IRAM1 ImageLimit(RW_m_data_2) {
123+
}
124+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_2_start + m_data_2_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
129125
}
130126
ARM_LIB_STACK m_data_2_start+m_data_2_size EMPTY -Stack_Size { ; Stack region growing down
131127
}

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K82F/device/TOOLCHAIN_ARM_STD/MK82FN256xxx15.sct

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,10 +119,12 @@ LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load
119119
RW_m_data m_data_start m_data_size { ; RW data
120120
.ANY (+RW +ZI)
121121
}
122-
RW_m_data_2 m_data_2_start m_data_2_size-Stack_Size-Heap_Size { ; RW data
122+
RW_m_data_2 m_data_2_start m_data_2_size { ; RW data
123123
.ANY (+RW +ZI)
124124
}
125-
RW_IRAM1 ImageLimit(RW_m_data_2) { ; Heap region growing up
125+
RW_IRAM1 ImageLimit(RW_m_data_2) {
126+
}
127+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_2_start + m_data_2_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
126128
}
127129
ARM_LIB_STACK m_data_2_start+m_data_2_size EMPTY -Stack_Size { ; Stack region growing down
128130
}

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL27Z/device/TOOLCHAIN_ARM_STD/MKL27Z64xxx4.sct

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,6 @@
8282
#define Stack_Size MBED_BOOT_STACK_SIZE
8383
#endif
8484

85-
#if (defined(__heap_size__))
86-
#define Heap_Size __heap_size__
87-
#else
88-
#define Heap_Size 0x0400
89-
#endif
90-
9185
LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region
9286
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
9387
* (RESET,+FIRST)
@@ -107,10 +101,12 @@ LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; lo
107101
VECTOR_RAM m_interrupts_start EMPTY 0 {
108102
}
109103
#endif
110-
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
104+
RW_m_data m_data_start m_data_size { ; RW data
111105
.ANY (+RW +ZI)
112106
}
113-
RW_IRAM1 +0 { ; Heap region growing up
107+
RW_IRAM1 +0 {
108+
}
109+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_start + m_data_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
114110
}
115111
ARM_LIB_STACK m_data_start+m_data_size EMPTY -Stack_Size { ; Stack region growing down
116112
}

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL43Z/device/TOOLCHAIN_ARM_STD/MKL43Z256xxx4.sct

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -80,12 +80,6 @@
8080
#define Stack_Size MBED_BOOT_STACK_SIZE
8181
#endif
8282

83-
#if (defined(__heap_size__))
84-
#define Heap_Size __heap_size__
85-
#else
86-
#define Heap_Size 0x0400
87-
#endif
88-
8983
LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region
9084
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
9185
* (RESET,+FIRST)
@@ -105,10 +99,12 @@ LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load
10599
VECTOR_RAM m_interrupts_start EMPTY 0 {
106100
}
107101
#endif
108-
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
102+
RW_m_data m_data_start m_data_size { ; RW data
109103
.ANY (+RW +ZI)
110104
}
111-
RW_IRAM1 +0 { ; Heap region growing up
105+
RW_IRAM1 +0 {
106+
}
107+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_start + m_data_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
112108
}
113109
ARM_LIB_STACK m_data_start+m_data_size EMPTY -Stack_Size { ; Stack region growing down
114110
}

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KL82Z/device/TOOLCHAIN_ARM_STD/MKL82Z128xxx7.sct

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -92,12 +92,6 @@
9292
#define Stack_Size MBED_BOOT_STACK_SIZE
9393
#endif
9494

95-
#if (defined(__heap_size__))
96-
#define Heap_Size __heap_size__
97-
#else
98-
#define Heap_Size 0x0400
99-
#endif
100-
10195
LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region
10296
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
10397
* (RESET,+FIRST)
@@ -120,10 +114,12 @@ LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load
120114
VECTOR_RAM m_interrupts_start EMPTY 0 {
121115
}
122116
#endif
123-
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
117+
RW_m_data m_data_start m_data_size { ; RW data
124118
.ANY (+RW +ZI)
125119
}
126-
RW_IRAM1 +0 { ; Heap region growing up
120+
RW_IRAM1 +0 {
121+
}
122+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_start + m_data_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
127123
}
128124
ARM_LIB_STACK m_data_start+m_data_size EMPTY -Stack_Size { ; Stack region growing down
129125
}

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW24D/device/TOOLCHAIN_ARM_STD/MKW24D512xxx5.sct

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -88,12 +88,6 @@
8888
#define Stack_Size MBED_BOOT_STACK_SIZE
8989
#endif
9090

91-
#if (defined(__heap_size__))
92-
#define Heap_Size __heap_size__
93-
#else
94-
#define Heap_Size 0x0400
95-
#endif
96-
9791
LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region
9892
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
9993
* (RESET,+FIRST)
@@ -116,10 +110,12 @@ LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load
116110
RW_m_data m_data_start m_data_size { ; RW data
117111
.ANY (+RW +ZI)
118112
}
119-
RW_m_data_2 m_data_2_start m_data_2_size-Stack_Size-Heap_Size { ; RW data
113+
RW_m_data_2 m_data_2_start m_data_2_size { ; RW data
120114
.ANY (+RW +ZI)
121115
}
122-
RW_IRAM1 ImageLimit(RW_m_data_2) { ; Heap region growing up
116+
RW_IRAM1 ImageLimit(RW_m_data_2) {
117+
}
118+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_2_start + m_data_2_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
123119
}
124120
ARM_LIB_STACK m_data_2_start+m_data_2_size EMPTY -Stack_Size { ; Stack region growing down
125121
}

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_KW41Z/device/TOOLCHAIN_ARM_STD/MKW41Z512xxx4.sct

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -85,12 +85,6 @@
8585
#define Stack_Size MBED_BOOT_STACK_SIZE
8686
#endif
8787

88-
#if (defined(__heap_size__))
89-
#define Heap_Size __heap_size__
90-
#else
91-
#define Heap_Size 0x0400
92-
#endif
93-
9488
LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region
9589
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
9690
* (RESET,+FIRST)
@@ -110,10 +104,12 @@ LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load
110104
VECTOR_RAM m_interrupts_start EMPTY 0 {
111105
}
112106
#endif
113-
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
107+
RW_m_data m_data_start m_data_size { ; RW data
114108
.ANY (+RW +ZI)
115109
}
116-
RW_IRAM1 +0 { ; Heap region growing up
110+
RW_IRAM1 +0 {
111+
}
112+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_start + m_data_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
117113
}
118114
ARM_LIB_STACK m_data_start+m_data_size EMPTY -Stack_Size { ; Stack region growing down
119115
}

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K22F/TARGET_MCU_K22F512/device/TOOLCHAIN_ARM_STD/MK22FN512xxx12.sct

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -86,12 +86,6 @@
8686
#define Stack_Size MBED_BOOT_STACK_SIZE
8787
#endif
8888

89-
#if (defined(__heap_size__))
90-
#define Heap_Size __heap_size__
91-
#else
92-
#define Heap_Size 0x0400
93-
#endif
94-
9589
LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region
9690
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
9791
* (RESET,+FIRST)
@@ -114,12 +108,13 @@ LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; lo
114108
RW_m_data m_data_start m_data_size { ; RW data
115109
.ANY (+RW +ZI)
116110
}
117-
RW_m_data_2 m_data_2_start m_data_2_size-Stack_Size-Heap_Size { ; RW data
111+
RW_m_data_2 m_data_2_start m_data_2_size { ; RW data
118112
.ANY (+RW +ZI)
119113
}
120-
RW_IRAM1 ImageLimit(RW_m_data_2) { ; Heap region growing up
114+
RW_IRAM1 ImageLimit(RW_m_data_2) {
115+
}
116+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_2_start + m_data_2_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
121117
}
122118
ARM_LIB_STACK m_data_2_start+m_data_2_size EMPTY -Stack_Size { ; Stack region growing down
123119
}
124120
}
125-

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K24F/TARGET_MCU_K24F1M/device/TOOLCHAIN_ARM_STD/MK24FN1M0xxx12.sct

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,13 +104,23 @@ LR_IROM1 m_interrupts_start m_text_size+m_interrupts_size+m_flash_config_size {
104104
* (InRoot$$Sections)
105105
.ANY (+RO)
106106
}
107+
108+
#if (defined(__ram_vector_table__))
109+
VECTOR_RAM m_interrupts_ram_start EMPTY m_interrupts_ram_size {
110+
}
111+
#else
112+
VECTOR_RAM m_interrupts_start EMPTY 0 {
113+
}
114+
#endif
107115
RW_m_data m_data_start m_data_size { ; RW data
108116
.ANY (+RW +ZI)
109117
}
110-
RW_IRAM1 m_data_2_start m_data_2_size-Stack_Size { ; RW data
118+
RW_m_data_2 m_data_2_start m_data_2_size { ; RW data
111119
.ANY (+RW +ZI)
112120
}
113-
VECTOR_RAM m_interrupts_ram_start EMPTY m_interrupts_ram_size {
121+
RW_IRAM1 ImageLimit(RW_m_data_2) {
122+
}
123+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_2_start + m_data_2_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
114124
}
115125
ARM_LIB_STACK m_data_2_start+m_data_2_size EMPTY -Stack_Size { ; Stack region growing down
116126
}

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_MCU_K64F/device/TOOLCHAIN_ARM_STD/MK64FN1M0xxx12.sct

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -96,13 +96,7 @@
9696
#define Stack_Size MBED_BOOT_STACK_SIZE
9797
#endif
9898

99-
#if (defined(__heap_size__))
100-
#define Heap_Size __heap_size__
101-
#else
102-
#define Heap_Size 0x0400
103-
#endif
104-
105-
LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region
99+
LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region
106100
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
107101
* (RESET,+FIRST)
108102
}
@@ -129,9 +123,9 @@ LR_IROM1 m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; lo
129123
RW_m_data_2 m_data_2_start m_data_2_size { ; RW data
130124
.ANY (+RW +ZI)
131125
}
132-
RW_IRAM1 ImageLimit(RW_m_data_2) { ; Heap region growing up
126+
RW_IRAM1 ImageLimit(RW_m_data_2) {
133127
}
134-
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_2_start + m_data_2_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) {
128+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (m_data_2_start + m_data_2_size - Stack_Size - AlignExpr(ImageLimit(RW_IRAM1), 16)) { ; Heap region growing up
135129
}
136130
ARM_LIB_STACK m_data_2_start+m_data_2_size EMPTY -Stack_Size { ; Stack region growing down
137131
}

targets/TARGET_Freescale/mbed_rtx.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -91,13 +91,6 @@
9191
#define INITIAL_SP (0x20030000UL)
9292
#endif
9393

94-
#if defined(__ARMCC_VERSION)
95-
extern uint32_t Image$$ARM_LIB_HEAP$$ZI$$Base[];
96-
extern uint32_t Image$$ARM_LIB_HEAP$$ZI$$Length[];
97-
#define HEAP_START Image$$ARM_LIB_HEAP$$ZI$$Base
98-
#define HEAP_SIZE Image$$ARM_LIB_HEAP$$ZI$$Length
99-
#endif
100-
10194
#elif defined(TARGET_SDT64B)
10295

10396
#ifndef INITIAL_SP
@@ -130,4 +123,11 @@ extern uint32_t Image$$ARM_LIB_HEAP$$ZI$$Length[];
130123

131124
#endif
132125

126+
#if defined(__ARMCC_VERSION)
127+
extern uint32_t Image$$ARM_LIB_HEAP$$ZI$$Base[];
128+
extern uint32_t Image$$ARM_LIB_HEAP$$ZI$$Length[];
129+
#define HEAP_START Image$$ARM_LIB_HEAP$$ZI$$Base
130+
#define HEAP_SIZE Image$$ARM_LIB_HEAP$$ZI$$Length
131+
#endif
132+
133133
#endif // MBED_MBED_RTX_H

0 commit comments

Comments
 (0)