# ST Microelectronics STM32H7 MCU line

# Copyright (c) 2019 Linaro Limited
# Copyright (c) 2020 Teslabs Engineering S.L.
# SPDX-License-Identifier: Apache-2.0

choice
	prompt "STM32H7x MCU Selection"
	depends on SOC_SERIES_STM32H7X

config SOC_STM32H723XX
	bool "STM32H723XX"
	select CPU_CORTEX_M7
	select CPU_HAS_FPU_DOUBLE_PRECISION

config SOC_STM32H743XX
	bool "STM32H743XX"
	select CPU_CORTEX_M7
	select CPU_HAS_FPU_DOUBLE_PRECISION

config SOC_STM32H745XX
	bool "STM32H745XX"
	select CPU_HAS_FPU_DOUBLE_PRECISION if CPU_CORTEX_M7

config SOC_STM32H747XX
	bool "STM32H747XX"
	select CPU_HAS_FPU_DOUBLE_PRECISION if CPU_CORTEX_M7

config SOC_STM32H750XX
	bool "STM32H750XX"
	select CPU_CORTEX_M7
	select CPU_HAS_FPU_DOUBLE_PRECISION

config SOC_STM32H753XX
	bool "STM32H753XX"
	select CPU_CORTEX_M7
	select CPU_HAS_FPU_DOUBLE_PRECISION

endchoice
