# FSL FRDM K22F platform configuration options

# Copyright (c) 2018 Prevas A/S
# SPDX-License-Identifier: Apache-2.0

if SOC_MK22F51212

config SOC
	default "mk22f51212"

config GPIO
	default y

config ENTROPY_MCUX_RNGA
	default y
	depends on ENTROPY_GENERATOR

config SOC_FLASH_MCUX
	default y
	depends on FLASH

config USB_KINETIS
	default y
	depends on USB_DEVICE_DRIVER

endif # SOC_MK22F12
