File tree Expand file tree Collapse file tree 32 files changed +198
-107
lines changed
targets/TARGET_Silicon_Labs
TARGET_EFM32GG/device/TARGET_1024K
TARGET_EFM32LG/device/TARGET_256K
TARGET_EFM32PG/device/TARGET_256K
TARGET_EFM32WG/device/TARGET_256K Expand file tree Collapse file tree 32 files changed +198
-107
lines changed Original file line number Diff line number Diff line change 1
1
#! armcc -E
2
+ #include "mbed_config.h"
2
3
; *************************************************************
3
4
; *** Scatter-Loading Description File generated by uVision ***
4
5
; *************************************************************
11
12
#define MBED_APP_SIZE 0x00100000
12
13
#endif
13
14
15
+ #if (defined(__stack_size__))
16
+ #define Stack_Size __stack_size__
17
+ #else
18
+ #if (defined(MBED_CONF_RTOS_PRESENT))
19
+ #define Stack_Size 0x0400
20
+ #else
21
+ #define Stack_Size 0x1000
22
+ #endif
23
+ #endif
24
+
14
25
LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
15
26
ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
16
27
*.o (RESET, +First)
17
28
*(InRoot$$Sections)
18
29
.ANY (+RO)
19
30
}
20
- RW_IRAM1 0x200000DC 0x0001FF24 { ; RW data
31
+ RW_IRAM1 0x200000DC 0x0001FF24-Stack_Size { ; RW data
21
32
.ANY (+RW +ZI)
22
33
}
34
+ ARM_LIB_STACK 0x200000DC+0x0001FF24 EMPTY -Stack_Size { ; Stack region growing down
35
+ }
23
36
}
24
37
Original file line number Diff line number Diff line change 9
9
/* Version 4.2.0 */
10
10
/* */
11
11
12
- /* With the RTOS in use, this does not affect the main stack size. The size of
13
- * the stack where main runs is determined via the RTOS. */
14
- STACK_SIZE = 0x400;
15
-
16
- HEAP_SIZE = 0x6000;
17
-
18
12
#if !defined(MBED_APP_START)
19
13
#define MBED_APP_START 0x00000000
20
14
#endif
@@ -220,13 +214,13 @@ SECTIONS
220
214
__end__ = .;
221
215
end = __end__;
222
216
_end = __end__;
223
- . += HEAP_SIZE ;
217
+ . = ORIGIN (RAM) + LENGTH (RAM) - Stack_Size ;
224
218
__HeapLimit = .;
225
219
} > RAM
226
220
227
221
__StackTop = ORIGIN (RAM) + LENGTH (RAM);
228
222
__stack = __StackTop;
229
- __StackLimit = __StackTop - STACK_SIZE ;
223
+ __StackLimit = __StackTop - Stack_Size ;
230
224
231
225
ASSERT (__StackLimit >= __HeapLimit, "Region RAM overflowed with stack and heap")
232
226
Original file line number Diff line number Diff line change 37
37
.section .stack
38
38
.align 3
39
39
#ifdef __STACK_SIZE
40
- .equ Stack_Size, __STACK_SIZE
40
+ .equ Stack_Size, __STACK_SIZE
41
41
#else
42
- .equ Stack_Size, 0x00000400
42
+ #if defined(MBED_CONF_RTOS_PRESENT)
43
+ .equ Stack_Size, 0x400
44
+ #else
45
+ .equ Stack_Size, 0x1000
46
+ #endif
43
47
#endif
44
48
.globl __StackTop
45
49
.globl __StackLimit
46
50
__StackLimit:
47
- .space Stack_Size
51
+ .globl Stack_Size
48
52
.size __StackLimit, . - __StackLimit
49
53
__StackTop:
50
54
.size __StackTop, . - __StackTop
Original file line number Diff line number Diff line change @@ -15,8 +15,7 @@ define symbol __NVIC_end__ = 0x200000DB;
15
15
define symbol __ICFEDIT_region_RAM_start__ = 0x200000DC;
16
16
define symbol __ICFEDIT_region_RAM_end__ = 0x2001FFFF;
17
17
/*-Sizes-*/
18
- /*Heap 1/4 of ram and stack 1/8*/
19
- define symbol __ICFEDIT_size_cstack__ = 0x4000;
18
+ define symbol __ICFEDIT_size_cstack__ = 0x400;
20
19
define symbol __ICFEDIT_size_heap__ = 0x8000;
21
20
/**** End of ICF editor section. ###ICF###*/
22
21
Original file line number Diff line number Diff line change 1
1
#! armcc -E
2
+ #include "mbed_config.h"
2
3
; *************************************************************
3
4
; *** Scatter-Loading Description File generated by uVision ***
4
5
; *************************************************************
11
12
#define MBED_APP_SIZE 0x00200000
12
13
#endif
13
14
15
+ #if (defined(__stack_size__))
16
+ #define Stack_Size __stack_size__
17
+ #else
18
+ #if (defined(MBED_CONF_RTOS_PRESENT))
19
+ #define Stack_Size 0x0400
20
+ #else
21
+ #define Stack_Size 0x1000
22
+ #endif
23
+ #endif
24
+
14
25
LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
15
26
ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
16
27
*.o (RESET, +First)
17
28
*(InRoot$$Sections)
18
29
.ANY (+RO)
19
30
}
20
- RW_IRAM1 0x20000158 0x0007FEA8 { ; RW data
31
+ RW_IRAM1 0x20000158 0x0007FEA8-Stack_Size { ; RW data
21
32
.ANY (+RW +ZI)
22
33
}
34
+ ARM_LIB_STACK 0x20000158+0x0007FEA8 EMPTY -Stack_Size { ; Stack region growing down
35
+ }
23
36
}
24
37
Original file line number Diff line number Diff line change @@ -198,6 +198,7 @@ SECTIONS
198
198
end = __end__;
199
199
_end = __end__;
200
200
KEEP(*(.heap*))
201
+ . = ORIGIN (RAM) + LENGTH (RAM) - Stack_Size;
201
202
__HeapLimit = .;
202
203
} > RAM
203
204
@@ -207,12 +208,13 @@ SECTIONS
207
208
.stack_dummy (COPY) :
208
209
{
209
210
KEEP(*(.stack*))
211
+ . += Stack_Size;
210
212
} > RAM
211
213
212
214
/* Set stack top to end of RAM, and stack limit move down by
213
215
* size of stack_dummy section */
214
216
__StackTop = ORIGIN (RAM) + LENGTH (RAM);
215
- __StackLimit = __StackTop - SIZEOF (.stack_dummy) ;
217
+ __StackLimit = __StackTop - Stack_Size ;
216
218
PROVIDE (__stack = __StackTop);
217
219
218
220
/* Check if data + heap + stack exceeds RAM limit */
Original file line number Diff line number Diff line change 37
37
.section .stack
38
38
.align 3
39
39
#ifdef __STACK_SIZE
40
- .equ Stack_Size, __STACK_SIZE
40
+ .equ Stack_Size, __STACK_SIZE
41
41
#else
42
- .equ Stack_Size, 0x00004000
42
+ #if defined(MBED_CONF_RTOS_PRESENT)
43
+ .equ Stack_Size, 0x400
44
+ #else
45
+ .equ Stack_Size, 0x1000
46
+ #endif
43
47
#endif
44
48
.globl __StackTop
45
49
.globl __StackLimit
46
50
__StackLimit:
47
- .space Stack_Size
51
+ .globl Stack_Size
48
52
.size __StackLimit, . - __StackLimit
49
53
__StackTop:
50
54
.size __StackTop, . - __StackTop
Original file line number Diff line number Diff line change @@ -15,8 +15,7 @@ define symbol __NVIC_end__ = 0x20000157;
15
15
define symbol __ICFEDIT_region_RAM_start__ = 0x20000158;
16
16
define symbol __ICFEDIT_region_RAM_end__ = 0x2007FFFF;
17
17
/*-Sizes-*/
18
- /*Heap 1/4 of ram and stack 1/8*/
19
- define symbol __ICFEDIT_size_cstack__ = 0x4000;
18
+ define symbol __ICFEDIT_size_cstack__ = 0x400;
20
19
define symbol __ICFEDIT_size_heap__ = 0x10000;
21
20
/**** End of ICF editor section. ###ICF###*/
22
21
Original file line number Diff line number Diff line change 1
1
#! armcc -E
2
+ #include "mbed_config.h"
2
3
; *************************************************************
3
4
; *** Scatter-Loading Description File generated by uVision ***
4
5
; *************************************************************
11
12
#define MBED_APP_SIZE 0x00040000
12
13
#endif
13
14
15
+ #if (defined(__stack_size__))
16
+ #define Stack_Size __stack_size__
17
+ #else
18
+ #if (defined(MBED_CONF_RTOS_PRESENT))
19
+ #define Stack_Size 0x0400
20
+ #else
21
+ #define Stack_Size 0x1000
22
+ #endif
23
+ #endif
24
+
14
25
LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
15
26
ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
16
27
*.o (RESET, +First)
17
28
*(InRoot$$Sections)
18
29
.ANY (+RO)
19
30
}
20
- RW_IRAM1 0x200000E0 0x00007F20 { ; RW data
31
+ RW_IRAM1 0x200000E0 0x00007F20-Stack_Size { ; RW data
21
32
.ANY (+RW +ZI)
22
33
}
34
+ ARM_LIB_STACK 0x200000E0+0x00007F20 EMPTY -Stack_Size { ; Stack region growing down
35
+ }
23
36
}
24
37
Original file line number Diff line number Diff line change @@ -198,6 +198,7 @@ SECTIONS
198
198
end = __end__;
199
199
_end = __end__;
200
200
KEEP(*(.heap*))
201
+ . = ORIGIN (RAM) + LENGTH (RAM) - Stack_Size;
201
202
__HeapLimit = .;
202
203
} > RAM
203
204
@@ -207,12 +208,13 @@ SECTIONS
207
208
.stack_dummy (COPY) :
208
209
{
209
210
KEEP(*(.stack*))
211
+ . += Stack_Size;
210
212
} > RAM
211
213
212
214
/* Set stack top to end of RAM, and stack limit move down by
213
215
* size of stack_dummy section */
214
216
__StackTop = ORIGIN (RAM) + LENGTH (RAM);
215
- __StackLimit = __StackTop - SIZEOF (.stack_dummy) ;
217
+ __StackLimit = __StackTop - Stack_Size ;
216
218
PROVIDE (__stack = __StackTop);
217
219
218
220
/* Check if data + heap + stack exceeds RAM limit */
Original file line number Diff line number Diff line change 37
37
.section .stack
38
38
.align 3
39
39
#ifdef __STACK_SIZE
40
- .equ Stack_Size, __STACK_SIZE
40
+ .equ Stack_Size, __STACK_SIZE
41
41
#else
42
- .equ Stack_Size, 0x00000400
42
+ #if defined(MBED_CONF_RTOS_PRESENT)
43
+ .equ Stack_Size, 0x400
44
+ #else
45
+ .equ Stack_Size, 0x1000
46
+ #endif
43
47
#endif
44
48
.globl __StackTop
45
49
.globl __StackLimit
46
50
__StackLimit:
47
- .space Stack_Size
51
+ .globl Stack_Size
48
52
.size __StackLimit, . - __StackLimit
49
53
__StackTop:
50
54
.size __StackTop, . - __StackTop
Original file line number Diff line number Diff line change @@ -16,7 +16,7 @@ define symbol __ICFEDIT_region_RAM_start__ = 0x200000E0;
16
16
define symbol __ICFEDIT_region_RAM_end__ = 0x20007FFF;
17
17
/*-Sizes-*/
18
18
/*Heap 1/4 of ram and stack 1/8*/
19
- define symbol __ICFEDIT_size_cstack__ = 0x1000 ;
19
+ define symbol __ICFEDIT_size_cstack__ = 0x400 ;
20
20
define symbol __ICFEDIT_size_heap__ = 0x2000;
21
21
/**** End of ICF editor section. ###ICF###*/
22
22
Original file line number Diff line number Diff line change 1
1
#! armcc -E
2
+ #include "mbed_config.h"
2
3
; *************************************************************
3
4
; *** Scatter-Loading Description File generated by uVision ***
4
5
; *************************************************************
11
12
#define MBED_APP_SIZE 0x00040000
12
13
#endif
13
14
15
+ #if (defined(__stack_size__))
16
+ #define Stack_Size __stack_size__
17
+ #else
18
+ #if (defined(MBED_CONF_RTOS_PRESENT))
19
+ #define Stack_Size 0x0400
20
+ #else
21
+ #define Stack_Size 0x1000
22
+ #endif
23
+ #endif
24
+
14
25
LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
15
26
ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
16
27
*.o (RESET, +First)
17
28
*(InRoot$$Sections)
18
29
.ANY (+RO)
19
30
}
20
- RW_IRAM1 0x200000C8 0x00007F38 { ; RW data
31
+ RW_IRAM1 0x200000C8 0x00007F38-Stack_Size { ; RW data
21
32
.ANY (+RW +ZI)
22
33
}
34
+ ARM_LIB_STACK 0x200000C8+0x00007F38 EMPTY -Stack_Size { ; Stack region growing down
35
+ }
23
36
}
24
37
Original file line number Diff line number Diff line change @@ -198,6 +198,7 @@ SECTIONS
198
198
end = __end__;
199
199
_end = __end__;
200
200
KEEP(*(.heap*))
201
+ . = ORIGIN (RAM) + LENGTH (RAM) - Stack_Size;
201
202
__HeapLimit = .;
202
203
} > RAM
203
204
@@ -207,12 +208,13 @@ SECTIONS
207
208
.stack_dummy (COPY) :
208
209
{
209
210
KEEP(*(.stack*))
211
+ . += Stack_Size;
210
212
} > RAM
211
213
212
214
/* Set stack top to end of RAM, and stack limit move down by
213
215
* size of stack_dummy section */
214
216
__StackTop = ORIGIN (RAM) + LENGTH (RAM);
215
- __StackLimit = __StackTop - SIZEOF (.stack_dummy) ;
217
+ __StackLimit = __StackTop - Stack_Size ;
216
218
PROVIDE (__stack = __StackTop);
217
219
218
220
/* Check if data + heap + stack exceeds RAM limit */
Original file line number Diff line number Diff line change 37
37
.section .stack
38
38
.align 3
39
39
#ifdef __STACK_SIZE
40
- .equ Stack_Size, __STACK_SIZE
40
+ .equ Stack_Size, __STACK_SIZE
41
41
#else
42
- .equ Stack_Size, 0x00000400
42
+ #if defined(MBED_CONF_RTOS_PRESENT)
43
+ .equ Stack_Size, 0x400
44
+ #else
45
+ .equ Stack_Size, 0x1000
46
+ #endif
43
47
#endif
44
48
.globl __StackTop
45
49
.globl __StackLimit
46
50
__StackLimit:
47
- .space Stack_Size
51
+ .globl Stack_Size
48
52
.size __StackLimit, . - __StackLimit
49
53
__StackTop:
50
54
.size __StackTop, . - __StackTop
Original file line number Diff line number Diff line change @@ -16,7 +16,7 @@ define symbol __ICFEDIT_region_RAM_start__ = 0x200000C8;
16
16
define symbol __ICFEDIT_region_RAM_end__ = 0x20007FFF;
17
17
/*-Sizes-*/
18
18
/*Heap 1/4 of ram and stack 1/8*/
19
- define symbol __ICFEDIT_size_cstack__ = 0x1000 ;
19
+ define symbol __ICFEDIT_size_cstack__ = 0x400 ;
20
20
define symbol __ICFEDIT_size_heap__ = 0x2000;
21
21
/**** End of ICF editor section. ###ICF###*/
22
22
Original file line number Diff line number Diff line change 1
1
#! armcc -E
2
+ #include "mbed_config.h"
2
3
; *************************************************************
3
4
; *** Scatter-Loading Description File generated by uVision ***
4
5
; *************************************************************
11
12
#define MBED_APP_SIZE 0x00100000
12
13
#endif
13
14
15
+ #if (defined(__stack_size__))
16
+ #define Stack_Size __stack_size__
17
+ #else
18
+ #if (defined(MBED_CONF_RTOS_PRESENT))
19
+ #define Stack_Size 0x0400
20
+ #else
21
+ #define Stack_Size 0x1000
22
+ #endif
23
+ #endif
24
+
14
25
LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
15
26
ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
16
27
*.o (RESET, +First)
17
28
*(InRoot$$Sections)
18
29
.ANY (+RO)
19
30
}
20
- RW_IRAM1 0x2000010C 0x0003FEF4 { ; RW data
31
+ RW_IRAM1 0x2000010C 0x0003FEF4-Stack_Size { ; RW data
21
32
.ANY (+RW +ZI)
22
33
}
34
+ ARM_LIB_STACK 0x2000010C+0x0003FEF4 EMPTY -Stack_Size { ; Stack region growing down
35
+ }
23
36
}
24
37
You can’t perform that action at this time.
0 commit comments