/* SPDX-License-Identifier: Apache-2.0 */

/dts-v1/;

#include <atmel/sam3x.dtsi>
#include "arduino_due-pinctrl.dtsi"

/ {
	model = "Arduino Due with an Atmel SAM3X8E SoC";
	compatible = "arduino,due", "atmel,sam3x8e", "atmel,sam3x";

	aliases {
		uart-0 = &uart;
		i2c-0 = &twi0;
		i2c-1 = &twi1;
		led0 = &yellow_led;
		watchdog0 = &wdt;
	};

	chosen {
		zephyr,sram = &sram0;
		zephyr,flash = &flash0;
		zephyr,console = &uart;
		zephyr,shell-uart = &uart;
	};

	leds {
		compatible = "gpio-leds";

		yellow_led: led_0 {
			gpios = <&piob 27 0>;
			label = "User LED";
		};
	};
};

&cpu0 {
	clock-frequency = <84000000>;
};

&wdt {
	status = "okay";
};

&twi0 {
	status = "okay";

	pinctrl-0 = <&twi0_default>;
	pinctrl-names = "default";
};

&twi1 {
	status = "okay";

	pinctrl-0 = <&twi1_default>;
	pinctrl-names = "default";
};

&uart {
	status = "okay";
	current-speed = <115200>;

	pinctrl-0 = <&uart_default>;
	pinctrl-names = "default";
};

arduino_i2c: &twi1 { };
