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

if BOARD_FRDM_KW41Z

config BOARD
	default "frdm_kw41z"

config OSC_XTAL0_FREQ
	default 32000000

config MCG_FRDIV
	default 5

config MCG_FCRDIV
	default 0

if PINMUX_MCUX

config PINMUX_MCUX_PORTA
	def_bool y

config PINMUX_MCUX_PORTB
	def_bool y if ADC_0

config PINMUX_MCUX_PORTC
	def_bool y

endif # PINMUX_MCUX

if GPIO_MCUX

config GPIO_MCUX_PORTA
	def_bool y

config GPIO_MCUX_PORTB
	def_bool n

config GPIO_MCUX_PORTC
	def_bool y

endif # GPIO_MCUX

if UART_MCUX_LPUART

config UART_MCUX_LPUART_0
	def_bool y if UART_CONSOLE

endif # UART_MCUX

if I2C

config I2C_1
	def_bool y

endif # I2C

if ADC

config ADC_0
	def_bool y

endif # ADC

if FXOS8700

config FXOS8700_DRDY_INT1
	def_bool y

endif # FXOS8700

if SPI

config SPI_0
	def_bool y

endif # SPI

endif # BOARD_FRDM_KW41Z
