# MIMXRT1050-EVK board

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

if BOARD_MIMXRT1050_EVK || BOARD_MIMXRT1050_EVK_QSPI

config BOARD
	default "mimxrt1050_evk" if BOARD_MIMXRT1050_EVK
	default "mimxrt1050_evk_qspi" if BOARD_MIMXRT1050_EVK_QSPI

choice CODE_LOCATION
	default CODE_FLEXSPI
endchoice

config DISK_DRIVER_SDMMC
	default y if DISK_DRIVERS
if FLASH

config FLASH_MCUX_FLEXSPI_HYPERFLASH
	default y if BOARD_MIMXRT1050_EVK
	default n if BOARD_MIMXRT1050_EVK_QSPI

config FLASH_MCUX_FLEXSPI_NOR
	default y if BOARD_MIMXRT1050_EVK_QSPI
	default n if BOARD_MIMXRT1050_EVK

endif #FLASH

config I2C
	default y if KSCAN || SENSOR

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_MIMXRT1050_EVK || BOARD_MIMXRT1050_EVK_QSPI
