# ST Microelectronics STM32F7 MCU series

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

config SOC_SERIES_STM32F7X
	select ARM
	select CPU_CORTEX_M7
	select CPU_CORTEX_M_HAS_DWT
	select CPU_HAS_FPU
	select CPU_HAS_ICACHE
	select CPU_HAS_DCACHE
	select HAS_STM32CUBE
	select CPU_HAS_ARM_MPU
	select HAS_SWO
