arm: stm32f4: Add basic support for STM32F412

Add necessary Kconfig and minimal device tree in order to support
STM32F412ZG variant as found on the Nucleo STM32F412 board.

Origin: Original

Change-Id: Ic98a686f478ce551dc6101466ed0cf16924109e8
Signed-off-by: Florian Vaussard <florian.vaussard@heig-vd.ch>
This commit is contained in:
Florian Vaussard 2017-05-29 16:57:33 +02:00 committed by Anas Nashif
commit 6ad43279ec
4 changed files with 43 additions and 0 deletions

View file

@ -0,0 +1,18 @@
# Kconfig - ST STM32F412ZG MCU configuration options
#
# Copyright (c) 2017 Florian Vaussard, HEIG-VD
#
# SPDX-License-Identifier: Apache-2.0
#
if SOC_STM32F412ZG
config SOC
string
default stm32f412zx
config NUM_IRQS
int
default 97
endif # SOC_STM32F412ZG

View file

@ -18,6 +18,9 @@ config SOC_STM32F407XG
config SOC_STM32F411XE config SOC_STM32F411XE
bool "STM32F411XE" bool "STM32F411XE"
config SOC_STM32F412ZG
bool "STM32F412ZG"
config SOC_STM32F413XH config SOC_STM32F413XH
bool "STM32F413XH" bool "STM32F413XH"

View file

@ -30,6 +30,9 @@
#elif defined(CONFIG_SOC_STM32F411XE) #elif defined(CONFIG_SOC_STM32F411XE)
#define DT_FLASH_SIZE __SIZE_K(512) #define DT_FLASH_SIZE __SIZE_K(512)
#define DT_SRAM_SIZE __SIZE_K(128) #define DT_SRAM_SIZE __SIZE_K(128)
#elif defined(CONFIG_SOC_STM32F412ZG)
#define DT_FLASH_SIZE __SIZE_K(1024)
#define DT_SRAM_SIZE __SIZE_K(256)
#elif defined(CONFIG_SOC_STM32F413XH) #elif defined(CONFIG_SOC_STM32F413XH)
#define DT_FLASH_SIZE __SIZE_K(1536) #define DT_FLASH_SIZE __SIZE_K(1536)
#define DT_SRAM_SIZE __SIZE_K(320) #define DT_SRAM_SIZE __SIZE_K(320)

19
dts/arm/st/stm32f412.dtsi Normal file
View file

@ -0,0 +1,19 @@
/*
* Copyright (c) 2017 Florian Vaussard, HEIG-VD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <st/stm32f411.dtsi>
/ {
soc {
usart3: serial@40004800 {
compatible = "st,stm32-usart", "st,stm32-uart";
reg = <0x40004800 0x400>;
interrupts = <39 0>;
status = "disabled";
label = "UART_3";
};
};
};