soc: stm32: Add support for stm32h745xx SoC

add stm32h745xx SoC and corresponding device tree

Signed-off-by: Alexander Kozhinov <AlexanderKozhinov@yandex.com>
This commit is contained in:
Alexander Kozhinov 2020-06-12 20:39:34 +02:00 committed by Carles Cufí
commit 54e8bda856
7 changed files with 113 additions and 0 deletions

View file

@ -0,0 +1,33 @@
/*
* Copyright (c) 2020 Alexander Kozhinov
* AlexanderKozhinov@yandex.com
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <st/h7/stm32h7_dualcore.dtsi>
/ {
/*
* The RAM memories placed here can be used by both cores M4/M7
* For more information see reference manual and datasheet to STM32H745
*/
/* system data RAM accessible over over AXI bus */
sram0: memory@24000000 {
reg = <0x24000000 DT_SIZE_K(512)>;
compatible = "mmio-sram";
};
/* system data RAM accessible over over AHB bus */
sram1: memory@30000000 {
reg = <0x30000000 DT_SIZE_K(288)>;
compatible = "mmio-sram";
};
/* system data RAM accessible over over AHB bus */
sram4: memory@38000000 {
reg = <0x38000000 DT_SIZE_K(64)>;
compatible = "mmio-sram";
};
};

View file

@ -0,0 +1,25 @@
/*
* Copyright (c) 2020 Alexander Kozhinov
* AlexanderKozhinov@yandex.com
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <mem.h>
#include <st/h7/stm32h745.dtsi>
/ {
cpus {
/delete-node/ cpu@0;
};
soc {
flash-controller@52002000 {
flash1: flash@8100000 {
compatible = "soc-nv-flash";
label = "FLASH_STM32";
reg = <0x08100000 DT_SIZE_K(1024)>;
};
};
};
};

View file

@ -0,0 +1,30 @@
/*
* Copyright (c) 2020 Alexander Kozhinov
* AlexanderKozhinov@yandex.com
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <mem.h>
#include <st/h7/stm32h745.dtsi>
/ {
cpus {
/delete-node/ cpu@1;
};
dtcm: memory@20000000 {
compatible = "arm,dtcm";
reg = <0x20000000 DT_SIZE_K(128)>;
};
soc {
flash-controller@52002000 {
flash0: flash@8000000 {
compatible = "soc-nv-flash";
label = "FLASH_STM32";
reg = <0x08000000 DT_SIZE_K(1024)>;
};
};
};
};

View file

@ -12,4 +12,8 @@ source "soc/arm/st_stm32/stm32h7/Kconfig.defconfig.stm32h7*"
config SOC_SERIES config SOC_SERIES
default "stm32h7" default "stm32h7"
config DMA_STM32_V1
default y
depends on DMA_STM32
endif # SOC_SERIES_STM32H7X endif # SOC_SERIES_STM32H7X

View file

@ -0,0 +1,15 @@
# ST STM32H745X MCU configuration options
# Copyright (c) 2020 Alexander Kozhinov
# AlexanderKozhinov@yandex.com
# SPDX-License-Identifier: Apache-2.0
if SOC_STM32H745XX
config SOC
default "stm32h745xx"
config NUM_IRQS
default 150
endif # SOC_STM32H745XX

View file

@ -11,8 +11,10 @@ config SOC_SERIES_STM32H7X
select SOC_FAMILY_STM32 select SOC_FAMILY_STM32
select HAS_STM32CUBE select HAS_STM32CUBE
select CPU_HAS_ARM_MPU select CPU_HAS_ARM_MPU
select HAS_SWO
select REQUIRES_FULL_LIBC select REQUIRES_FULL_LIBC
select USE_STM32_HAL_RCC_EX if CPU_CORTEX_M4 select USE_STM32_HAL_RCC_EX if CPU_CORTEX_M4
select USE_STM32_HAL_CORTEX
help help
Enable support for STM32H7 MCU series Enable support for STM32H7 MCU series

View file

@ -13,6 +13,10 @@ config SOC_STM32H743XX
select CPU_CORTEX_M7 select CPU_CORTEX_M7
select CPU_HAS_FPU_DOUBLE_PRECISION select CPU_HAS_FPU_DOUBLE_PRECISION
config SOC_STM32H745XX
bool "STM32H745XX"
select CPU_HAS_FPU_DOUBLE_PRECISION if CPU_CORTEX_M7
config SOC_STM32H747XX config SOC_STM32H747XX
bool "STM32H747XX" bool "STM32H747XX"
select CPU_HAS_FPU_DOUBLE_PRECISION if CPU_CORTEX_M7 select CPU_HAS_FPU_DOUBLE_PRECISION if CPU_CORTEX_M7