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

if BOARD_LPCXPRESSO54114_M4

config BOARD
	default "lpcxpresso54114_m4"

if USART_MCUX_LPC

config USART_MCUX_LPC_0
	def_bool y if UART_CONSOLE

endif # USART_MCUX_LPC

if PINMUX_MCUX_LPC

config PINMUX_MCUX_LPC_PORT0
	def_bool y

config PINMUX_MCUX_LPC_PORT1
	def_bool y

endif # PINMUX_MCUX_LPC

if GPIO_MCUX_LPC

config GPIO_MCUX_LPC_PORT0
	def_bool y

config GPIO_MCUX_LPC_PORT1
	def_bool y

endif # GPIO_MCUX_LPC

endif # BOARD_LPCXPRESSO54114_M4
