diff options
author | Ryan <fauxpark@gmail.com> | 2021-08-18 04:23:22 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-18 04:23:22 +1000 |
commit | 37496f4b6047248c25195e13e0f90593dc492fff (patch) | |
tree | 5625c447db985439420ea0c319ce39c6e4ae3954 | |
parent | 7da97c293da851851c204af065a0c8d2f884effd (diff) | |
download | qmk_firmware-37496f4b6047248c25195e13e0f90593dc492fff.tar.gz qmk_firmware-37496f4b6047248c25195e13e0f90593dc492fff.zip |
Add alternate ldscript for STM32duino (F103xB) (#12914)
* Add alternate ldscript for STM32duino (F103xB)
* Refactor out common ldscript stuff
* Move ldscripts into stm32duino board dir, add search path to ldflags
-rw-r--r-- | platforms/chibios/STM32_F103_STM32DUINO/ld/STM32F103x8_stm32duino_bootloader.ld | 22 | ||||
-rw-r--r-- | platforms/chibios/STM32_F103_STM32DUINO/ld/STM32F103xB_stm32duino_bootloader.ld | 22 | ||||
-rw-r--r-- | platforms/chibios/STM32_F103_STM32DUINO/ld/stm32duino_bootloader_common.ld (renamed from platforms/chibios/common/ld/STM32F103x8_stm32duino_bootloader.ld) | 4 | ||||
-rw-r--r-- | tmk_core/chibios.mk | 1 |
4 files changed, 47 insertions, 2 deletions
diff --git a/platforms/chibios/STM32_F103_STM32DUINO/ld/STM32F103x8_stm32duino_bootloader.ld b/platforms/chibios/STM32_F103_STM32DUINO/ld/STM32F103x8_stm32duino_bootloader.ld new file mode 100644 index 000000000..a4bd566b5 --- /dev/null +++ b/platforms/chibios/STM32_F103_STM32DUINO/ld/STM32F103x8_stm32duino_bootloader.ld | |||
@@ -0,0 +1,22 @@ | |||
1 | /* | ||
2 | ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio | ||
3 | |||
4 | Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | you may not use this file except in compliance with the License. | ||
6 | You may obtain a copy of the License at | ||
7 | |||
8 | http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | |||
10 | Unless required by applicable law or agreed to in writing, software | ||
11 | distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | See the License for the specific language governing permissions and | ||
14 | limitations under the License. | ||
15 | */ | ||
16 | |||
17 | /* | ||
18 | * STM32F103x8 memory setup for use with the STM32Duino bootloader. | ||
19 | */ | ||
20 | f103_flash_size = 64k; | ||
21 | |||
22 | INCLUDE stm32duino_bootloader_common.ld | ||
diff --git a/platforms/chibios/STM32_F103_STM32DUINO/ld/STM32F103xB_stm32duino_bootloader.ld b/platforms/chibios/STM32_F103_STM32DUINO/ld/STM32F103xB_stm32duino_bootloader.ld new file mode 100644 index 000000000..dc47400dc --- /dev/null +++ b/platforms/chibios/STM32_F103_STM32DUINO/ld/STM32F103xB_stm32duino_bootloader.ld | |||
@@ -0,0 +1,22 @@ | |||
1 | /* | ||
2 | ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio | ||
3 | |||
4 | Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | you may not use this file except in compliance with the License. | ||
6 | You may obtain a copy of the License at | ||
7 | |||
8 | http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | |||
10 | Unless required by applicable law or agreed to in writing, software | ||
11 | distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | See the License for the specific language governing permissions and | ||
14 | limitations under the License. | ||
15 | */ | ||
16 | |||
17 | /* | ||
18 | * STM32F103xB memory setup for use with the STM32Duino bootloader. | ||
19 | */ | ||
20 | f103_flash_size = 128k; | ||
21 | |||
22 | INCLUDE stm32duino_bootloader_common.ld | ||
diff --git a/platforms/chibios/common/ld/STM32F103x8_stm32duino_bootloader.ld b/platforms/chibios/STM32_F103_STM32DUINO/ld/stm32duino_bootloader_common.ld index bb852422a..76cd3153b 100644 --- a/platforms/chibios/common/ld/STM32F103x8_stm32duino_bootloader.ld +++ b/platforms/chibios/STM32_F103_STM32DUINO/ld/stm32duino_bootloader_common.ld | |||
@@ -15,11 +15,11 @@ | |||
15 | */ | 15 | */ |
16 | 16 | ||
17 | /* | 17 | /* |
18 | * ST32F103xB memory setup for use with the maplemini bootloader. | 18 | * STM32Duino bootloader common memory setup. |
19 | */ | 19 | */ |
20 | MEMORY | 20 | MEMORY |
21 | { | 21 | { |
22 | flash0 : org = 0x08002000, len = 64k - 0x2000 | 22 | flash0 : org = 0x08002000, len = f103_flash_size - 0x2000 |
23 | flash1 : org = 0x00000000, len = 0 | 23 | flash1 : org = 0x00000000, len = 0 |
24 | flash2 : org = 0x00000000, len = 0 | 24 | flash2 : org = 0x00000000, len = 0 |
25 | flash3 : org = 0x00000000, len = 0 | 25 | flash3 : org = 0x00000000, len = 0 |
diff --git a/tmk_core/chibios.mk b/tmk_core/chibios.mk index 827f080e5..cbd9fff69 100644 --- a/tmk_core/chibios.mk +++ b/tmk_core/chibios.mk | |||
@@ -191,6 +191,7 @@ else ifneq ("$(wildcard $(KEYBOARD_PATH_2)/ld/$(MCU_LDSCRIPT).ld)","") | |||
191 | else ifneq ("$(wildcard $(KEYBOARD_PATH_1)/ld/$(MCU_LDSCRIPT).ld)","") | 191 | else ifneq ("$(wildcard $(KEYBOARD_PATH_1)/ld/$(MCU_LDSCRIPT).ld)","") |
192 | LDSCRIPT = $(KEYBOARD_PATH_1)/ld/$(MCU_LDSCRIPT).ld | 192 | LDSCRIPT = $(KEYBOARD_PATH_1)/ld/$(MCU_LDSCRIPT).ld |
193 | else ifneq ("$(wildcard $(TOP_DIR)/platforms/chibios/$(BOARD)/ld/$(MCU_LDSCRIPT).ld)","") | 193 | else ifneq ("$(wildcard $(TOP_DIR)/platforms/chibios/$(BOARD)/ld/$(MCU_LDSCRIPT).ld)","") |
194 | LDFLAGS += -L$(TOP_DIR)/platforms/chibios/$(BOARD)/ld | ||
194 | LDSCRIPT = $(TOP_DIR)/platforms/chibios/$(BOARD)/ld/$(MCU_LDSCRIPT).ld | 195 | LDSCRIPT = $(TOP_DIR)/platforms/chibios/$(BOARD)/ld/$(MCU_LDSCRIPT).ld |
195 | else ifneq ("$(wildcard $(TOP_DIR)/platforms/chibios/common/ld/$(MCU_LDSCRIPT).ld)","") | 196 | else ifneq ("$(wildcard $(TOP_DIR)/platforms/chibios/common/ld/$(MCU_LDSCRIPT).ld)","") |
196 | LDSCRIPT = $(TOP_DIR)/platforms/chibios/common/ld/$(MCU_LDSCRIPT).ld | 197 | LDSCRIPT = $(TOP_DIR)/platforms/chibios/common/ld/$(MCU_LDSCRIPT).ld |