Skip to content

Commit ea4aed2

Browse files
authored
Merge pull request #14372 from harmut01/baremetal_samsung
S1SBP6A: Add bare metal support
2 parents 3742e34 + 2e97458 commit ea4aed2

File tree

2 files changed

+24
-5
lines changed

2 files changed

+24
-5
lines changed

targets/TARGET_Samsung/TARGET_SIDK_S1SBP6A/device/TOOLCHAIN_ARM_STD/s1sbp6a.sct

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,11 @@
6969
#define STACK_SIZE MBED_CONF_TARGET_BOOT_STACK_SIZE
7070
#endif
7171

72+
#define RAM_FIXED_SIZE (MBED_CONF_TARGET_BOOT_STACK_SIZE + NVIC_VECTORS_SIZE)
73+
74+
#define MBED_RAM1_START (MBED_RAM_START + NVIC_VECTORS_SIZE)
75+
#define MBED_RAM1_SIZE (MBED_RAM_SIZE - NVIC_VECTORS_SIZE - STACK_SIZE)
76+
7277
; The vector table is loaded at address 0x00000000 in Flash memory region.
7378
LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
7479
ER_IROM1 MBED_APP_START MBED_APP_SIZE { ; load address = execution address
@@ -77,9 +82,11 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
7782
*(+RO)
7883
}
7984
; NVIC_VECTORS_SIZE Total
80-
RW_IRAM1 (MBED_RAM_START + NVIC_VECTORS_SIZE) (MBED_RAM_SIZE - NVIC_VECTORS_SIZE - STACK_SIZE) { ; RW data
85+
RW_IRAM1 MBED_RAM1_START MBED_RAM1_SIZE { ; RW data
8186
*(+RW +ZI)
8287
}
88+
ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (MBED_RAM_SIZE - RAM_FIXED_SIZE - (AlignExpr(ImageLimit(RW_IRAM1), 16) - MBED_RAM1_START)) { ; Heap growing up
89+
}
8390
ARM_LIB_STACK (MBED_RAM_START + MBED_RAM_SIZE) EMPTY - STACK_SIZE { ; Stack region growing down
8491
}
8592
}

targets/targets.json

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7769,8 +7769,7 @@
77697769
"core": "Cortex-M7",
77707770
"supported_toolchains": [
77717771
"GCC_ARM",
7772-
"IAR",
7773-
"ARMC6"
7772+
"ARM"
77747773
],
77757774
"default_toolchain": "GCC_ARM",
77767775
"extra_labels": [
@@ -7825,7 +7824,7 @@
78257824
"core": "Cortex-M4F",
78267825
"supported_toolchains": [
78277826
"GCC_ARM",
7828-
"ARMC6"
7827+
"ARM"
78297828
],
78307829
"default_toolchain": "GCC_ARM",
78317830
"extra_labels": [
@@ -7845,7 +7844,20 @@
78457844
"WATCHDOG"
78467845
],
78477846
"release_versions": ["5"],
7848-
"detect_code": ["3703"]
7847+
"detect_code": ["3703"],
7848+
"supported_c_libs": {
7849+
"arm": [
7850+
"std",
7851+
"small"
7852+
],
7853+
"gcc_arm": [
7854+
"std",
7855+
"small"
7856+
]
7857+
},
7858+
"supported_application_profiles": [
7859+
"full", "bare-metal"
7860+
]
78497861
},
78507862
"FAMILY_Apollo3": {
78517863
"inherits": ["Target"],

0 commit comments

Comments
 (0)