# Kconfig - Electronut Labs Blip board configuration
#
# Copyright (c) 2018 Electronut Labs
#
# SPDX-License-Identifier: Apache-2.0

if BOARD_NRF52840_BLIP

config BOARD
	default "nrf52840_blip"

if USB

config USB_NRF52840
	default y

config USB_DEVICE_STACK
	default y

endif # USB

if IEEE802154

config IEEE802154_NRF5
	default y

endif # IEEE802154

config BT_CTLR
	default BT

if PWM

config PWM_0
	default y

endif # PWM

if I2C

config I2C_0
	default y

endif # I2C

if SPI

config SPI_1
	default y

endif # SPI

endif # BOARD_NRF52840_BLIP
