# MIMXRT1060-EVK board

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

if BOARD_MIMXRT1060_EVK || BOARD_MIMXRT1060_EVK_HYPERFLASH

config BOARD
	default "mimxrt1060_evk" if BOARD_MIMXRT1060_EVK
	default "mimxrt1060_evk_hyperflash" if BOARD_MIMXRT1060_EVK_HYPERFLASH

choice CODE_LOCATION
	default CODE_FLEXSPI
endchoice

config DISK_DRIVER_SDMMC
	default y if DISK_DRIVERS

if FLASH

config FLASH_MCUX_FLEXSPI_NOR
	default y if BOARD_MIMXRT1060_EVK
	default n if BOARD_MIMXRT1060_EVK_HYPERFLASH

config FLASH_MCUX_FLEXSPI_HYPERFLASH
	default y if BOARD_MIMXRT1060_EVK_HYPERFLASH
	default n if BOARD_MIMXRT1060_EVK

endif #FLASH

config I2C
	default y if KSCAN

config KSCAN
	default y if LVGL

if KSCAN

config KSCAN_FT5336
	default y

config KSCAN_FT5336_INTERRUPT
	default y

endif # KSCAN

if NETWORKING

config NET_L2_ETHERNET
	default y

config ETH_MCUX_PHY_RESET
	default y

endif # NETWORKING

if LVGL

config LV_Z_POINTER_KSCAN
	default y

config LV_Z_POINTER_KSCAN_DEV_NAME
	default "FT5336"

config LV_Z_HOR_RES_MAX
	default 480

config LV_Z_VER_RES_MAX
	default 272

config LV_Z_VDB_SIZE
	default 16

config LV_Z_DPI
	default 128

choice LV_COLOR_DEPTH
	default LV_COLOR_DEPTH_16
endchoice

endif # LVGL

endif # BOARD_MIMXRT1060_EVK || BOARD_MIMXRT1060_EVK_HYPERFLASH
