/*
 * Copyright (c) 2019 Benjamin Valentin
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/dts-v1/;
#include <atmel/same5xx20.dtsi>
#include "atsame54_xpro-pinctrl.dtsi"

/ {
	model = "SAM E54 Xplained Pro";
	compatible = "atsame54,xpro", "atmel,same54p20a", "atmel,same54";

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

	/* These aliases are provided for compatibility with samples */
	aliases {
		led0 = &led0;
		pwm-led0 = &pwm_led0;
		sw0 = &button0;
		i2c-0 = &sercom7;
	};

	leds {
		compatible = "gpio-leds";
		led0: led_0 {
			gpios = <&portc 18 GPIO_ACTIVE_LOW>;
			label = "Yellow LED";
		};
	};

	pwmleds {
		compatible = "pwm-leds";
		pwm_led0: pwm_led_0 {
			pwms = <&tcc0 2>;
		};
	};

	buttons {
		compatible = "gpio-keys";
		button0: button_0 {
			gpios = <&portb 31 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
			label = "SW0";
		};
	};
};

&tcc0 {
	status = "okay";
	compatible = "atmel,sam0-tcc-pwm";
	/* Gives a maximum period of 1.1s for 120MHz main clock */
	prescaler = <8>;
	#pwm-cells = <1>;

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

&sercom2 {
	status = "okay";
	compatible = "atmel,sam0-uart";
	current-speed = <115200>;
	rxpo = <1>;
	txpo = <0>;
	#address-cells = <1>;
	#size-cells = <0>;

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

&sercom4 {
	status = "okay";
	compatible = "atmel,sam0-spi";
	dipo = <3>;
	dopo = <0>;
	label = "SPI_0";
	#address-cells = <1>;
	#size-cells = <0>;

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

&sercom7 {
	status = "okay";
	compatible = "atmel,sam0-i2c";
	clock-frequency = <I2C_BITRATE_FAST>;
	label = "I2C_0";
	#address-cells = <1>;
	#size-cells = <0>;

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

&adc0 {
	status = "okay";
};

&rtc {
	status = "okay";
};

zephyr_udc0: &usb0 {
	status = "okay";

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

&gmac {
	status = "okay";
	zephyr,random-mac-address;

	pinctrl-0 = <&gmac_rmii>;
	pinctrl-names = "default";

	phy: phy {
		compatible = "ethernet-phy";
		status = "okay";
		address = <0>;
		mdio = <&mdio>;
	};
};

&mdio {
	status = "okay";

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