File tree Expand file tree Collapse file tree 3 files changed +21
-5
lines changed
targets/TARGET_RDA/TARGET_UNO_91H/device
TOOLCHAIN_ARM_STD/TARGET_UNO_91H
TOOLCHAIN_GCC_ARM/TARGET_UNO_91H
TOOLCHAIN_IAR/TARGET_UNO_91H Expand file tree Collapse file tree 3 files changed +21
-5
lines changed Original file line number Diff line number Diff line change 27
27
#define RDA_AHB1_BASE (0x40100000)
28
28
#define RDA_MEMC_BASE (RDA_AHB1_BASE + 0x00000)
29
29
30
+ #if !defined(MBED_BOOT_STACK_SIZE)
31
+ #define MBED_BOOT_STACK_SIZE 0x400
32
+ #endif
33
+
34
+ #define Stack_Size MBED_BOOT_STACK_SIZE
35
+
30
36
; max code size: RDA_CODE_SIZE
31
37
LR_IROM1 RDA_CODE_BASE RDA_CODE_SIZE { ; load region size_region
32
38
ER_IROM0 RDA_CODE_BASE RDA_CODE_SIZE { ; load address = execution address
@@ -37,11 +43,11 @@ LR_IROM1 RDA_CODE_BASE RDA_CODE_SIZE { ; load region size_region
37
43
; 8_byte_aligned(31 vect * 4 bytes) = 8_byte_aligned(0x7C) = 0x80
38
44
ER_IRAMVEC RDA_IRAM_BASE EMPTY 0x80 { ; Reserved for vectors
39
45
}
40
- ; IRAM Size: Total(128KB) - Vector(128B) - Stack(2KB )
41
- RW_IRAM1 AlignExpr(+0, 8) (0x20000 - 0x80 - 0x800 ) {
46
+ ; IRAM Size: Total(128KB) - Vector(128B) - Stack(1KB )
47
+ RW_IRAM1 AlignExpr(+0, 8) (0x20000 - 0x80 - Stack_Size ) {
42
48
.ANY (+RW +ZI)
43
49
}
44
- ARM_LIB_STACK AlignExpr(+0, 8) EMPTY (RDA_IRAM_BASE + RDA_IRAM_SIZE - AlignExpr(ImageLimit(RW_IRAM1), 8)) {
50
+ ARM_LIB_STACK AlignExpr(+0, 8) EMPTY Stack_Size {
45
51
}
46
52
ARM_LIB_HEAP RDA_DRAM_BASE EMPTY RDA_DRAM_SIZE {
47
53
}
Original file line number Diff line number Diff line change 1
1
/* Linker script for mbed RDA5981C */
2
2
3
+ #if !defined(MBED_BOOT_STACK_SIZE)
4
+ #define MBED_BOOT_STACK_SIZE 0x400
5
+ #endif
6
+
7
+ STACK_SIZE = MBED_BOOT_STACK_SIZE;
8
+
3
9
/* Linker script to configure memory regions. */
4
10
MEMORY
5
11
{
@@ -148,7 +154,7 @@ SECTIONS
148
154
/* Set stack top to end of IRAM, and stack limit move down by
149
155
* size of stack_dummy section */
150
156
__StackTop = ORIGIN (IRAM) + LENGTH (IRAM);
151
- __StackLimit = __StackTop - SIZEOF (.stack_dummy) ;
157
+ __StackLimit = __StackTop - STACK_SIZE ;
152
158
PROVIDE (__stack = __StackTop);
153
159
154
160
/* Check if data + stack exceeds RAM limit */
Original file line number Diff line number Diff line change @@ -36,7 +36,11 @@ define symbol WLAN_BASE = RDA_MEMC_BASE + 0x19800;
36
36
define symbol WLAN_END = RDA_MEMC_END;
37
37
38
38
/* Stack Size & Heap Size*/
39
- define symbol CSTACK_SIZE = 0x00400;
39
+ if (!isdefinedsymbol(MBED_BOOT_STACK_SIZE)) {
40
+ define symbol MBED_BOOT_STACK_SIZE = 0x400;
41
+ }
42
+
43
+ define symbol CSTACK_SIZE = MBED_BOOT_STACK_SIZE;
40
44
define symbol HEAP_SIZE = RDA_DRAM_END - RDA_DRAM_BASE + 1;
41
45
42
46
/*Memory regions*/
You can’t perform that action at this time.
0 commit comments