# Arduino Due Board configuration

# Copyright (c) 2017 Justin Watson
# SPDX-License-Identifier: Apache-2.0

if BOARD_ARDUINO_DUE

config BOARD
	default "arduino_due"

config GPIO_SAM
	default y
	depends on GPIO

if I2C

config I2C_SAM_TWI
	default y

endif # I2C

endif # BOARD_ARDUINO_DUE
