2020-08-25 08:58:00 +00:00
|
|
|
MCU_ORIG := $(MCU)
|
|
|
|
|
2020-02-21 06:12:15 +00:00
|
|
|
ifneq ($(findstring MKL26Z64, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m0plus
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 6
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = KINETIS
|
|
|
|
MCU_SERIES = KL2x
|
|
|
|
|
|
|
|
# Linker script to use
|
|
|
|
# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
|
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= MKL26Z64
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/ports/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= kl2x
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= PJRC_TEENSY_LC
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(findstring MK20DX128, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = KINETIS
|
|
|
|
MCU_SERIES = K20x
|
|
|
|
|
|
|
|
# Linker script to use
|
|
|
|
# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
|
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= MK20DX128
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/ports/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= k20x5
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= PJRC_TEENSY_3
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(findstring MK20DX256, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = KINETIS
|
|
|
|
MCU_SERIES = K20x
|
|
|
|
|
|
|
|
# Linker script to use
|
|
|
|
# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
|
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= MK20DX256
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/ports/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= k20x7
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= PJRC_TEENSY_3_1
|
|
|
|
endif
|
|
|
|
|
2021-09-30 22:14:37 +00:00
|
|
|
ifneq ($(findstring MK66FX1M0, $(MCU)),)
|
2021-03-16 19:45:21 +00:00
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = KINETIS
|
|
|
|
MCU_SERIES = MK66F18
|
|
|
|
|
|
|
|
# Linker script to use
|
|
|
|
# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
|
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= MK66FX1M0
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= MK66F18
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= PJRC_TEENSY_3_6
|
|
|
|
endif
|
|
|
|
|
2020-09-19 03:00:18 +00:00
|
|
|
ifneq ($(findstring STM32F042, $(MCU)),)
|
2019-12-28 19:18:52 +00:00
|
|
|
# Cortex version
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU = cortex-m0
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
2020-09-19 03:00:18 +00:00
|
|
|
ARMV = 6
|
2019-12-28 19:18:52 +00:00
|
|
|
|
2019-01-10 16:22:57 +00:00
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
2019-12-28 19:18:52 +00:00
|
|
|
MCU_FAMILY = STM32
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU_SERIES = STM32F0xx
|
2019-01-10 16:22:57 +00:00
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2019-11-15 02:25:40 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU_LDSCRIPT ?= STM32F042x6
|
2019-01-10 16:22:57 +00:00
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU_STARTUP ?= stm32f0xx
|
2019-01-10 16:22:57 +00:00
|
|
|
|
2019-11-15 02:25:40 +00:00
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
2020-09-19 03:00:18 +00:00
|
|
|
BOARD ?= GENERIC_STM32_F042X6
|
2019-01-10 16:22:57 +00:00
|
|
|
|
2020-09-19 03:00:18 +00:00
|
|
|
USE_FPU ?= no
|
2019-12-28 19:18:52 +00:00
|
|
|
|
2021-04-06 06:39:15 +00:00
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32F0
|
2021-10-16 01:58:48 +00:00
|
|
|
|
|
|
|
# Stack sizes: Since this chip has limited RAM capacity, the stack area needs to be reduced.
|
|
|
|
# This ensures that the EEPROM page buffer fits into RAM
|
|
|
|
USE_PROCESS_STACKSIZE = 0x600
|
|
|
|
USE_EXCEPTIONS_STACKSIZE = 0x300
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFFC400
|
2019-12-28 19:18:52 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(findstring STM32F072, $(MCU)),)
|
2019-01-10 16:22:57 +00:00
|
|
|
# Cortex version
|
2019-12-28 19:18:52 +00:00
|
|
|
MCU = cortex-m0
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 6
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32F0xx
|
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2019-12-28 19:18:52 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= STM32F072xB
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32f0xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
2020-02-13 19:39:22 +00:00
|
|
|
BOARD ?= GENERIC_STM32_F072XB
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
USE_FPU ?= no
|
|
|
|
|
2021-04-06 06:39:15 +00:00
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32F0
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFFC800
|
2019-12-28 19:18:52 +00:00
|
|
|
endif
|
|
|
|
|
2020-09-19 03:00:18 +00:00
|
|
|
ifneq ($(findstring STM32F103, $(MCU)),)
|
2019-12-28 19:18:52 +00:00
|
|
|
# Cortex version
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU = cortex-m3
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
2020-09-19 03:00:18 +00:00
|
|
|
ARMV = 7
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU_SERIES = STM32F1xx
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2019-12-28 19:18:52 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU_LDSCRIPT ?= STM32F103x8
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU_STARTUP ?= stm32f1xx
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
2020-09-19 03:00:18 +00:00
|
|
|
BOARD ?= GENERIC_STM32_F103
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
USE_FPU ?= no
|
|
|
|
|
2021-04-06 06:39:15 +00:00
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32F1
|
2019-12-28 19:18:52 +00:00
|
|
|
endif
|
|
|
|
|
2020-09-19 03:00:18 +00:00
|
|
|
ifneq ($(findstring STM32F303, $(MCU)),)
|
2019-12-28 19:18:52 +00:00
|
|
|
# Cortex version
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU = cortex-m4
|
2019-01-10 16:22:57 +00:00
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
2019-12-28 19:18:52 +00:00
|
|
|
ARMV = 7
|
2019-01-10 16:22:57 +00:00
|
|
|
|
2019-12-28 19:18:52 +00:00
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU_SERIES = STM32F3xx
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2019-12-28 19:18:52 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU_LDSCRIPT ?= STM32F303xC
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
2020-09-19 03:00:18 +00:00
|
|
|
MCU_STARTUP ?= stm32f3xx
|
2019-12-28 19:18:52 +00:00
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
2020-09-19 03:00:18 +00:00
|
|
|
BOARD ?= GENERIC_STM32_F303XC
|
2019-01-10 16:22:57 +00:00
|
|
|
|
2020-09-19 03:00:18 +00:00
|
|
|
USE_FPU ?= yes
|
|
|
|
|
2021-04-06 06:39:15 +00:00
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32F3
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFFD800
|
2020-09-19 03:00:18 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(findstring STM32F401, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32F4xx
|
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2020-09-19 03:00:18 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
2021-08-23 22:05:10 +00:00
|
|
|
ifeq ($(strip $(BOOTLOADER)), tinyuf2)
|
|
|
|
MCU_LDSCRIPT ?= STM32F401xC_tinyuf2
|
|
|
|
FIRMWARE_FORMAT ?= uf2
|
|
|
|
else
|
|
|
|
MCU_LDSCRIPT ?= STM32F401xC
|
|
|
|
endif
|
2020-09-19 03:00:18 +00:00
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32f4xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= BLACKPILL_STM32_F401
|
|
|
|
|
|
|
|
USE_FPU ?= yes
|
|
|
|
|
2021-04-06 06:39:15 +00:00
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32F4
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFF0000
|
2020-09-19 03:00:18 +00:00
|
|
|
endif
|
|
|
|
|
2021-09-24 23:19:41 +00:00
|
|
|
ifneq ($(findstring STM32F405, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32F4xx
|
|
|
|
|
|
|
|
# Linker script to use
|
|
|
|
# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
|
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= STM32F405xG
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32f4xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= GENERIC_STM32_F405XG
|
|
|
|
|
|
|
|
USE_FPU ?= yes
|
|
|
|
|
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32F4
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFF0000
|
2021-09-24 23:19:41 +00:00
|
|
|
endif
|
|
|
|
|
2021-08-08 20:52:13 +00:00
|
|
|
ifneq ($(findstring STM32F407, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32F4xx
|
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2021-08-08 20:52:13 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= STM32F407xE
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32f4xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= GENERIC_STM32_F407XE
|
|
|
|
|
|
|
|
USE_FPU ?= yes
|
|
|
|
|
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32F4
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFF0000
|
2021-08-08 20:52:13 +00:00
|
|
|
endif
|
|
|
|
|
2020-09-19 03:00:18 +00:00
|
|
|
ifneq ($(findstring STM32F411, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32F4xx
|
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2020-09-19 03:00:18 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
2021-04-25 03:40:56 +00:00
|
|
|
ifeq ($(strip $(BOOTLOADER)), tinyuf2)
|
|
|
|
MCU_LDSCRIPT ?= STM32F411xE_tinyuf2
|
|
|
|
FIRMWARE_FORMAT ?= uf2
|
|
|
|
else
|
|
|
|
MCU_LDSCRIPT ?= STM32F411xE
|
|
|
|
endif
|
2020-09-19 03:00:18 +00:00
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32f4xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= BLACKPILL_STM32_F411
|
|
|
|
|
|
|
|
USE_FPU ?= yes
|
2019-01-10 16:22:57 +00:00
|
|
|
|
2021-04-06 06:39:15 +00:00
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32F4
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFF0000
|
2021-02-06 00:27:46 +00:00
|
|
|
endif
|
|
|
|
|
2021-04-25 08:59:25 +00:00
|
|
|
ifneq ($(findstring STM32F446, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32F4xx
|
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2021-04-25 08:59:25 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= STM32F446xE
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32f4xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= GENERIC_STM32_F446XE
|
|
|
|
|
|
|
|
USE_FPU ?= yes
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFF0000
|
2021-04-25 08:59:25 +00:00
|
|
|
endif
|
|
|
|
|
2021-02-06 00:27:46 +00:00
|
|
|
ifneq ($(findstring STM32G431, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32G4xx
|
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2021-02-06 00:27:46 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= STM32G431xB
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32g4xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= GENERIC_STM32_G431XB
|
|
|
|
|
|
|
|
USE_FPU ?= yes
|
|
|
|
|
2021-04-06 06:39:15 +00:00
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32G4
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFF0000
|
2021-02-06 00:27:46 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(findstring STM32G474, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32G4xx
|
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2021-02-06 00:27:46 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= STM32G474xE
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32g4xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= GENERIC_STM32_G474XE
|
|
|
|
|
|
|
|
USE_FPU ?= yes
|
|
|
|
|
2021-04-06 06:39:15 +00:00
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32G4
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFF0000
|
2019-01-10 16:22:57 +00:00
|
|
|
endif
|
|
|
|
|
2021-04-26 03:07:15 +00:00
|
|
|
ifneq (,$(filter $(MCU),STM32L433 STM32L443))
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32L4xx
|
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2021-04-26 03:07:15 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= STM32L432xC
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32l4xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= GENERIC_STM32_L433XC
|
|
|
|
|
|
|
|
PLATFORM_NAME ?= platform_l432
|
|
|
|
|
|
|
|
USE_FPU ?= yes
|
|
|
|
|
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32L4
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFF0000
|
2021-04-26 03:07:15 +00:00
|
|
|
endif
|
|
|
|
|
2021-06-30 00:07:40 +00:00
|
|
|
ifneq (,$(filter $(MCU),STM32L412 STM32L422))
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m4
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32L4xx
|
|
|
|
|
|
|
|
# Linker script to use
|
2021-10-26 23:10:48 +00:00
|
|
|
# - it should exist either in <chibios>/os/common/startup/ARMCMx/compilers/GCC/ld/
|
2021-06-30 00:07:40 +00:00
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= STM32L412xB
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= stm32l4xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= GENERIC_STM32_L412XB
|
|
|
|
|
|
|
|
PLATFORM_NAME ?= platform_l432
|
|
|
|
|
|
|
|
USE_FPU ?= yes
|
|
|
|
|
|
|
|
# UF2 settings
|
|
|
|
UF2_FAMILY ?= STM32L4
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for STM32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFF0000
|
2021-06-30 00:07:40 +00:00
|
|
|
endif
|
|
|
|
|
2021-11-26 22:28:18 +00:00
|
|
|
ifneq ($(findstring WB32F3G71, $(MCU)),)
|
|
|
|
# Cortex version
|
|
|
|
MCU = cortex-m3
|
|
|
|
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = WB32
|
|
|
|
MCU_SERIES = WB32F3G71xx
|
|
|
|
|
|
|
|
# Linker script to use
|
|
|
|
# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
|
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= WB32F3G71x9
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= wb32f3g71xx
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= GENERIC_WB32_F3G71XX
|
|
|
|
|
|
|
|
USE_FPU ?= no
|
2022-01-05 19:55:46 +00:00
|
|
|
|
|
|
|
# Bootloader address for WB32 DFU
|
|
|
|
STM32_BOOTLOADER_ADDRESS ?= 0x1FFFE000
|
|
|
|
WB32_BOOTLOADER_ADDRESS ?= 0x1FFFE000
|
2021-11-26 22:28:18 +00:00
|
|
|
endif
|
|
|
|
|
2021-10-18 05:23:20 +00:00
|
|
|
ifneq ($(findstring GD32VF103, $(MCU)),)
|
|
|
|
# RISC-V
|
|
|
|
MCU = risc-v
|
2021-11-26 22:28:18 +00:00
|
|
|
|
2021-10-18 05:23:20 +00:00
|
|
|
# RISC-V extensions and abi configuration
|
|
|
|
MCU_ARCH = rv32imac
|
|
|
|
MCU_ABI = ilp32
|
|
|
|
MCU_CMODEL = medlow
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# - the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = GD32V
|
|
|
|
MCU_SERIES = GD32VF103
|
|
|
|
|
|
|
|
# Linker script to use
|
|
|
|
# - it should exist either in <chibios>/os/common/startup/RISCV-ECLIC/compilers/GCC/ld/
|
|
|
|
# or <keyboard_dir>/ld/
|
|
|
|
MCU_LDSCRIPT ?= GD32VF103xB
|
|
|
|
|
|
|
|
# Startup code to use
|
|
|
|
# - it should exist in <chibios>/os/common/startup/RISCV-ECLIC/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP ?= gd32vf103
|
|
|
|
|
|
|
|
# Board: it should exist either in <chibios>/os/hal/boards/,
|
|
|
|
# <keyboard_dir>/boards/, or drivers/boards/
|
|
|
|
BOARD ?= SIPEED_LONGAN_NANO
|
|
|
|
|
|
|
|
USE_FPU ?= no
|
|
|
|
endif
|
|
|
|
|
2021-01-30 03:53:56 +00:00
|
|
|
ifneq (,$(filter $(MCU),at90usb162 atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 at90usb647 at90usb1286 at90usb1287))
|
2020-03-22 09:48:17 +00:00
|
|
|
PROTOCOL = LUFA
|
|
|
|
|
2019-01-10 16:22:57 +00:00
|
|
|
# Processor frequency.
|
|
|
|
# This will define a symbol, F_CPU, in all source code files equal to the
|
|
|
|
# processor frequency in Hz. You can then use this symbol in your source code to
|
|
|
|
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
|
|
|
# automatically to create a 32-bit value in your source code.
|
|
|
|
#
|
|
|
|
# This will be an integer division of F_USB below, as it is sourced by
|
|
|
|
# F_USB after it has run through any CPU prescalers. Note that this value
|
|
|
|
# does not *change* the processor frequency - it should merely be updated to
|
|
|
|
# reflect the processor speed set externally so that the code can use accurate
|
|
|
|
# software delays.
|
|
|
|
F_CPU ?= 16000000
|
|
|
|
|
|
|
|
# LUFA specific
|
|
|
|
#
|
|
|
|
# Target architecture (see library "Board Types" documentation).
|
2019-08-08 21:09:54 +00:00
|
|
|
ARCH = AVR8
|
2019-01-10 16:22:57 +00:00
|
|
|
|
|
|
|
# Input clock frequency.
|
|
|
|
# This will define a symbol, F_USB, in all source code files equal to the
|
|
|
|
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
|
|
|
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
|
|
|
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
|
|
|
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
|
|
|
# at the end, this will be done automatically to create a 32-bit value in your
|
|
|
|
# source code.
|
|
|
|
#
|
|
|
|
# If no clock division is performed on the input clock inside the AVR (via the
|
|
|
|
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
|
|
|
F_USB ?= $(F_CPU)
|
2019-08-08 21:09:54 +00:00
|
|
|
|
|
|
|
# Interrupt driven control endpoint task
|
|
|
|
ifeq (,$(filter $(NO_INTERRUPT_CONTROL_ENDPOINT),yes))
|
|
|
|
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
|
|
|
endif
|
2021-01-30 03:53:56 +00:00
|
|
|
ifneq (,$(filter $(MCU),at90usb162 atmega16u2 atmega32u2))
|
2020-11-28 20:02:18 +00:00
|
|
|
NO_I2C = yes
|
|
|
|
endif
|
2019-08-08 21:09:54 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq (,$(filter $(MCU),atmega32a))
|
2019-12-08 07:32:43 +00:00
|
|
|
# MCU name for avrdude
|
|
|
|
AVRDUDE_MCU = m32
|
|
|
|
|
2019-08-08 21:09:54 +00:00
|
|
|
PROTOCOL = VUSB
|
|
|
|
|
|
|
|
# Processor frequency.
|
|
|
|
# This will define a symbol, F_CPU, in all source code files equal to the
|
|
|
|
# processor frequency in Hz. You can then use this symbol in your source code to
|
|
|
|
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
|
|
|
# automatically to create a 32-bit value in your source code.
|
|
|
|
F_CPU ?= 12000000
|
2019-01-10 16:22:57 +00:00
|
|
|
endif
|
2019-09-07 15:24:19 +00:00
|
|
|
|
|
|
|
ifneq (,$(filter $(MCU),atmega328p))
|
2019-12-08 07:32:43 +00:00
|
|
|
# MCU name for avrdude
|
|
|
|
AVRDUDE_MCU = m328p
|
|
|
|
|
2019-09-07 15:24:19 +00:00
|
|
|
PROTOCOL = VUSB
|
|
|
|
|
|
|
|
# Processor frequency.
|
|
|
|
# This will define a symbol, F_CPU, in all source code files equal to the
|
|
|
|
# processor frequency in Hz. You can then use this symbol in your source code to
|
|
|
|
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
|
|
|
# automatically to create a 32-bit value in your source code.
|
|
|
|
F_CPU ?= 16000000
|
|
|
|
endif
|
2020-04-02 21:23:57 +00:00
|
|
|
|
2020-06-10 21:23:11 +00:00
|
|
|
ifneq (,$(filter $(MCU),atmega328))
|
|
|
|
# MCU name for avrdude
|
|
|
|
AVRDUDE_MCU = m328
|
|
|
|
|
|
|
|
PROTOCOL = VUSB
|
|
|
|
|
|
|
|
# Processor frequency.
|
|
|
|
# This will define a symbol, F_CPU, in all source code files equal to the
|
|
|
|
# processor frequency in Hz. You can then use this symbol in your source code to
|
|
|
|
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
|
|
|
# automatically to create a 32-bit value in your source code.
|
|
|
|
F_CPU ?= 16000000
|
|
|
|
endif
|
|
|
|
|
2020-04-02 21:23:57 +00:00
|
|
|
ifneq (,$(filter $(MCU),attiny85))
|
|
|
|
PROTOCOL = VUSB
|
|
|
|
|
|
|
|
# Processor frequency.
|
|
|
|
# This will define a symbol, F_CPU, in all source code files equal to the
|
|
|
|
# processor frequency in Hz. You can then use this symbol in your source code to
|
|
|
|
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
|
|
|
# automatically to create a 32-bit value in your source code.
|
|
|
|
F_CPU ?= 16500000
|
|
|
|
endif
|