From b480734c88a91534faf1f68ef1c10859516d7e81 Mon Sep 17 00:00:00 2001 From: adelyser <12093019+ad@users.noreply.github.com> Date: Wed, 27 Oct 2021 21:25:21 -0600 Subject: [PATCH] stm32: Add STM32H743 support Signed-off-by: Aaron DeLyser Signed-off-by: Kevin O'Connor --- src/stm32/Kconfig | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/stm32/Kconfig b/src/stm32/Kconfig index 5aeadf69..2c523164 100644 --- a/src/stm32/Kconfig +++ b/src/stm32/Kconfig @@ -64,6 +64,9 @@ choice bool "STM32F072" select MACH_STM32F0 select MACH_STM32F0x2 + config MACH_STM32H743 + bool "STM32H743" + select MACH_STM32H7 config MACH_STM32H750 bool "STM32H750" select MACH_STM32H7 @@ -106,6 +109,7 @@ config MCU default "stm32f407xx" if MACH_STM32F407 default "stm32f429xx" if MACH_STM32F429 default "stm32f446xx" if MACH_STM32F446 + default "stm32h743xx" if MACH_STM32H743 default "stm32h750xx" if MACH_STM32H750 config CLOCK_FREQ @@ -127,10 +131,12 @@ config FLASH_SIZE default 0x10000 if MACH_STM32F103 # Flash size of stm32f103x8 (64KiB) default 0x40000 if MACH_STM32F2 || MACH_STM32F401 default 0x80000 if MACH_STM32F4x5 || MACH_STM32F446 - default 0x20000 if MACH_STM32H7 # Flash size of stm32h750 (128KiB) + default 0x20000 if MACH_STM32H750 + default 0x200000 if MACH_STM32H743 config RAM_START hex + default 0x24000000 if MACH_STM32H743 default 0x20000000 config RAM_SIZE @@ -142,7 +148,8 @@ config RAM_SIZE default 0x20000 if MACH_STM32F207 default 0x10000 if MACH_STM32F401 default 0x20000 if MACH_STM32F4x5 || MACH_STM32F446 - default 0x20000 if MACH_STM32H7 + default 0x20000 if MACH_STM32H750 + default 0x80000 if MACH_STM32H743 config STACK_SIZE int @@ -154,7 +161,7 @@ config STACK_SIZE ###################################################################### choice - prompt "Bootloader offset" if MACH_STM32F1 || MACH_STM32F2 || MACH_STM32F4 || MACH_STM32F070 + prompt "Bootloader offset" if MACH_STM32F1 || MACH_STM32F2 || MACH_STM32F4 || MACH_STM32F070 || MACH_STM32H743 config STM32_FLASH_START_2000 bool "8KiB bootloader (stm32duino)" if MACH_STM32F103 || MACH_STM32F070 config STM32_FLASH_START_5000 @@ -176,6 +183,8 @@ choice bool "2KiB bootloader (HID Bootloader)" if MACH_STM32F103 config STM32_FLASH_START_4000 bool "16KiB bootloader (HID Bootloader)" if MACH_STM32F207 || MACH_STM32F401 || MACH_STM32F4x5 || MACH_STM32F103 + config STM32_FLASH_START_20000 + bool "128KiB bootloader (SKR SE BX v2.0)" if MACH_STM32H743 config STM32_FLASH_START_0000 bool "No bootloader" @@ -191,6 +200,7 @@ config FLASH_START default 0x8008800 if STM32_FLASH_START_8800 default 0x800C000 if STM32_FLASH_START_C000 default 0x8010000 if STM32_FLASH_START_10000 + default 0x8020000 if STM32_FLASH_START_20000 default 0x8020200 if STM32_FLASH_START_20200 default 0x8000000 @@ -276,6 +286,10 @@ choice bool "Serial (on USART3 PD9/PD8)" if LOW_LEVEL_OPTIONS depends on !MACH_STM32F0 && !MACH_STM32F401 select SERIAL + config STM32_SERIAL_UART4 + bool "Serial (on UART4 PA0/PA1)" + depends on MACH_STM32H7 + select SERIAL config STM32_CANBUS_PA11_PA12 bool "CAN bus (on PA11/PA12)" if HAVE_STM32_CANBUS select CANSERIAL