# ST Microelectronics STM32F7 MCU series

# Copyright (c) 2018 Yurii Hamann
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_STM32F7X
	bool "STM32F7x Series MCU"
	select ARM
	select CPU_CORTEX_M7
	select CPU_CORTEX_M_HAS_DWT
	select CPU_HAS_FPU
	select SOC_FAMILY_STM32
	select HAS_STM32CUBE
	select CPU_HAS_ARM_MPU
	select HAS_SWO
	help
	  Enable support for STM32F7 MCU series
