summary refs log tree commit diff
path: root/quantum
diff options
context:
space:
mode:
authorthpoll83 <67008047+thpoll83@users.noreply.github.com>2021-08-08 22:52:13 +0200
committerGitHub <noreply@github.com>2021-08-09 06:52:13 +1000
commitb43c6bc176dcd612ae14f9819a171abe286e92bc (patch)
tree3a012b36fdb81338603db21b86a1ce72d28dce3d /quantum
parentac92ded0ccd6a85a6f34e81287ec66fad7402add (diff)
Add support for STM32F407x MCUs. (#13718)
* Add support for STM32F407x MCUs.

* Removing STMF407 MCU variation

* Update quantum/mcu_selection.mk

Remove options for dfu flashing

Co-authored-by: Ryan <fauxpark@gmail.com>

* DISABLE STM32_USB_USE_OTG1

* Update platforms/chibios/GENERIC_STM32_F407XE/configs/mcuconf.h

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update platforms/chibios/GENERIC_STM32_F407XE/configs/mcuconf.h

Co-authored-by: thomas.pollak <thomas.pollak@dynatrace.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
Diffstat (limited to 'quantum')
-rw-r--r--quantum/mcu_selection.mk32
1 files changed, 32 insertions, 0 deletions
diff --git a/quantum/mcu_selection.mk b/quantum/mcu_selection.mk
index ca0accd719..dc441d27bc 100644
--- a/quantum/mcu_selection.mk
+++ b/quantum/mcu_selection.mk
@@ -268,6 +268,38 @@ ifneq ($(findstring STM32F401, $(MCU)),)
   UF2_FAMILY ?= STM32F4
 endif
 
+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
+  # - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
+  #   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
+endif
+
 ifneq ($(findstring STM32F411, $(MCU)),)
   # Cortex version
   MCU = cortex-m4