// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
 * Dell Wyse 3020 a.k.a. "Ariel" a.k.a. Tx0D (T00D, T10D)
 *
 * Copyright (C) 2019 Lubomir Rintel <lkundrak@v3.sk>
 */

/dts-v1/;
#include "mmp3.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>

/ {
	model = "Dell Ariel";
	compatible = "dell,wyse-ariel", "marvell,mmp3";

	aliases {
		serial2 = &uart3;
	};

	chosen {
		#address-cells = <0x1>;
		#size-cells = <0x1>;
		ranges;
		bootargs = "earlyprintk=ttyS2,115200 console=ttyS2,115200";
	};

	memory@0 {
		available = <0x7f700000 0x7ff00000 0x00000000 0x7f600000>;
		reg = <0x0 0x80000000>;
		device_type = "memory";
	};

	ec_input_spi: spi {
		compatible = "spi-gpio";
		#address-cells = <1>;
		#size-cells = <0>;

		num-chipselects = <0>;
		sck-gpios = <&gpio 55 GPIO_ACTIVE_HIGH>;
		miso-gpios = <&gpio 57 GPIO_ACTIVE_HIGH>;
		mosi-gpios = <&gpio 58 GPIO_ACTIVE_HIGH>;
	};
};

&uart3 {
	status = "okay";
};

&rtc {
	status = "okay";
};

&usb_otg0 {
	status = "okay";
};

&usb_otg_phy0 {
	status = "okay";
};

&hsic0 {
	status = "okay";

	usb1@1 {
		compatible = "usb424,2640";
		reg = <0x01>;
		#address-cells = <0x01>;
		#size-cells = <0x00>;

		mass-storage@1 {
			compatible = "usb424,4040";
			reg = <0x01>;
			status = "disabled";
		};
	};
};

&hsic_phy0 {
	status = "okay";
	reset-gpios = <&gpio 63 GPIO_ACTIVE_HIGH>;
};

&mmc3 {
	status = "okay";
	max-frequency = <50000000>;
	status = "okay";
	bus-width = <8>;
	non-removable;
	cap-mmc-highspeed;
};

&twsi1 {
	status = "okay";

	rtc@68 {
		compatible = "dallas,ds1338";
		reg = <0x68>;
		status = "okay";
	};
};

&twsi3 {
	status = "okay";
};

&twsi4 {
	status = "okay";

	embedded-controller@58 {
		compatible = "dell,wyse-ariel-ec", "ene,kb3930";
		reg = <0x58>;
		system-power-controller;

		off-gpios = <&gpio 126 GPIO_ACTIVE_HIGH>,
			    <&gpio 127 GPIO_ACTIVE_HIGH>;
	};
};

&ssp1 {
	status = "okay";
	cs-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;

	firmware-flash@0 {
		compatible = "winbond,w25q32", "jedec,spi-nor";
		reg = <0>;
		spi-max-frequency = <104000000>;
		m25p,fast-read;
	};
};

&ec_input_spi {
	status = "okay";
	cs-gpios = <&gpio 56 GPIO_ACTIVE_LOW>;

	power-button@0 {
		reg = <0>;
		interrupt-parent = <&gpio>;
		interrupts = <60 IRQ_TYPE_EDGE_RISING>;
		compatible = "dell,wyse-ariel-ec-input", "ene,kb3930-input";
		spi-max-frequency = <33000000>;
	};
};

&gpu_2d {
	status = "okay";
};

&gpu_3d {
	status = "okay";
};
