# ARM V2M Beetle Board configuration options

# Copyright (c) 2016 Linaro Limited
# SPDX-License-Identifier: Apache-2.0

if BOARD_V2M_BEETLE

config BOARD
	default "v2m_beetle"

if GPIO

config GPIO_CMSDK_AHB
	default y

config GPIO_CMSDK_AHB_PORT0
	default y

config GPIO_CMSDK_AHB_PORT1
	default y

config GPIO_CMSDK_AHB_PORT2
	default y

config GPIO_CMSDK_AHB_PORT3
	default y

endif # GPIO

if PINMUX

config PINMUX_BEETLE
	default y

endif # PINMUX

if SERIAL

config UART_CMSDK_APB
	default y

config UART_INTERRUPT_DRIVEN
	default y

endif # SERIAL

if WATCHDOG

config WDOG_CMSDK_APB
	default y

endif # WATCHDOG

if COUNTER

config TIMER_TMR_CMSDK_APB
	default y

config TIMER_DTMR_CMSDK_APB
	default y

endif # COUNTER

endif # BOARD_V2M_BEETLE
