# Copyright (c) 2019 Gerson Fernando Budke
# Copyright (c) 2019 Benjamin Valentin
# SPDX-License-Identifier: Apache-2.0
CONFIG_SOC_SERIES_SAMR21=y
CONFIG_SOC_PART_NUMBER_SAMR21G18A=y
CONFIG_BOARD_ATSAMR21_XPRO=y
CONFIG_CORTEX_M_SYSTICK=y
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_UART_SAM0=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_GPIO=y
CONFIG_GPIO_SAM0=y
CONFIG_WATCHDOG=y
CONFIG_WDT_SAM0=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K_AS_MAIN=y
CONFIG_PINMUX=y
CONFIG_PINMUX_SAM0=y
CONFIG_SPI=y
