# SPDX-License-Identifier: GPL-2.0-only
menuconfig ARCH_STM32
	bool "STMicroelectronics STM32 family"
	depends on ARM_SINGLE_ARMV7M || ARCH_MULTI_V7
	select ARMV7M_SYSTICK if ARM_SINGLE_ARMV7M
	select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7
	select ARM_GIC if ARCH_MULTI_V7
	select ARM_PSCI if ARCH_MULTI_V7
	select ARM_AMBA
	select ARCH_HAS_RESET_CONTROLLER
	select CLKSRC_STM32
	select PINCTRL
	select RESET_CONTROLLER
	select STM32_EXTI if ARM_SINGLE_ARMV7M
	select STM32_FIREWALL
	help
	  Support for STMicroelectronics STM32 processors.

if ARCH_STM32

if ARM_SINGLE_ARMV7M

config MACH_STM32F429
	bool "STMicroelectronics STM32F429"
	default y

config MACH_STM32F469
	bool "STMicroelectronics STM32F469"
	default y

config MACH_STM32F746
	bool "STMicroelectronics STM32F746"
	default y

config MACH_STM32F769
	bool "STMicroelectronics STM32F769"
	default y

config MACH_STM32H743
	bool "STMicroelectronics STM32H743"
	default y

endif # ARMv7-M

if ARCH_MULTI_V7

config MACH_STM32MP157
	bool "STMicroelectronics STM32MP157"
	select ARM_ERRATA_814220
	default y

config MACH_STM32MP13
	bool "STMicroelectronics STM32MP13x"
	select ARM_ERRATA_814220
	default y
	help
	  Support for STM32MP13 SoCs:
	  STM32MP131, STM32MP133, STM32MP135

endif # ARMv7-A

endif
