# iMX7 M4 core series

# Copyright (c) 2017, NXP
# SPDX-License-Identifier: Apache-2.0

if SOC_MCIMX7_M4

config SOC
	default "mcimx7d"

config SYS_CLOCK_HW_CYCLES_PER_SEC
	default 200000000

if CLOCK_CONTROL

config CLOCK_CONTROL_IMX_CCM
	default y

endif # CLOCK_CONTROL

config GPIO
	default y

if GPIO

config GPIO_IMX
	default y

endif # GPIO

if SERIAL

config UART_IMX
	default y

endif # SERIAL

if I2C

config I2C_IMX
	default y

endif # I2C

if PWM

config PWM_IMX
	default y

endif # PWM

if IPM

config IPM_IMX
	default y

endif # IPM

endif # SOC_MCIMX7_M4
