// SPDX-License-Identifier: GPL-2.0
/*
 * at91-gatwick.dts - Device Tree file for the Gatwick board
 *
 *  Copyright (C) 2018 Laird
 *
 */
/dts-v1/;
#include "at91-wb50n.dtsi"
#include <dt-bindings/input/input.h>

/ {
	model = "Laird Workgroup Bridge 50N - Project Gatwick";
	compatible = "laird,gatwick", "laird,wb50n", "atmel,sama5d31", "atmel,sama5d3", "atmel,sama5";

	gpio-keys {
		compatible = "gpio-keys";
		autorepeat;

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

		reset-button {
			label = "Reset Button";
			linux,code = <KEY_SETUP>;
			gpios = <&pioE 31 GPIO_ACTIVE_LOW>;
			wakeup-source;
		};
	};

	leds {
		compatible = "gpio-leds";

		led-ethernet {
			label = "gatwick:yellow:ethernet";
			gpios = <&pioA 10 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};

		led-wifi {
			label = "gatwick:green:wifi";
			gpios = <&pioA 28 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};

		led-ble {
			label = "gatwick:blue:ble";
			gpios = <&pioA 22 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};

		led-lora {
			label = "gatwick:orange:lora";
			gpios = <&pioA 26 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};

		led-blank {
			label = "gatwick:green:blank";
			gpios = <&pioA 24 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};

		led-user {
			label = "gatwick:yellow:user";
			gpios = <&pioA 12 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};
	};
};

&pinctrl {
	board {
		pinctrl_key_gpio: key_gpio_0 {
		  atmel,pins =
			  <AT91_PIOE 31 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PE31 GPIO with pullup deglitch */
	  };
	};
};

&mmc0 {
	status = "okay";
};

&macb1 {
	status = "okay";
};

&dbgu {
	status = "okay";
};

/* FTDI USART */
&usart0 {
	status = "okay";
};

/* GPS USART */
&usart1 {
	pinctrl-0 = <&pinctrl_usart1>;
	status = "okay";
};

&spi1 {
	status = "okay";

	spidev@0 {
		compatible = "semtech,sx1301";
		reg = <0>;
		spi-max-frequency = <8000000>;
	};
};

&usb1 {
	status = "okay";
	/delete-property/atmel,oc-gpio;
};

&usb2 {
	status = "okay";
};
