/dts-v1/;

#include "dove.dtsi"

/ {
	model = "Globalscale D3Plug";
	compatible = "globalscale,d3plug", "marvell,dove";

	memory {
		device_type = "memory";
		reg = <0x00000000 0x40000000>;
	};

	chosen {
		bootargs = "console=ttyS0,115200n8 earlyprintk root=/dev/mmcblk0p2 rw rootwait";
	};

	leds {
		compatible = "gpio-leds";
		pinctrl-0 = <&pmx_gpio_0 &pmx_gpio_1 &pmx_gpio_2>;
		pinctrl-names = "default";

		wlan-act {
			label = "wlan-act";
			gpios = <&gpio0 0 1>;
		};

		wlan-ap {
			label = "wlan-ap";
			gpios = <&gpio0 1 1>;
		};

		status {
			label = "status";
			gpios = <&gpio0 2 1>;
		};
	};

	regulators {
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <0>;

		usb_power: regulator@1 {
			compatible = "regulator-fixed";
			reg = <1>;
			regulator-name = "USB Power";
			regulator-min-microvolt = <5000000>;
			regulator-max-microvolt = <5000000>;
			enable-active-high;
			regulator-always-on;
			regulator-boot-on;
			gpio = <&gpio0 8 0>;
			pinctrl-0 = <&pmx_gpio_8>;
			pinctrl-names = "default";
		};
	};
};

&uart0 { status = "okay"; };
&sata0 { status = "okay"; };
&i2c0 { status = "okay"; };

/* Samsung M8G2F eMMC */
&sdio0 {
	status = "okay";
	non-removable;
	bus-width = <4>;
};

/* Marvell SD8787 WLAN/BT */
&sdio1 {
	status = "okay";
	non-removable;
};

&spi0 {
	status = "okay";

	/* spi0.0: 2M Flash Macronix MX25L1605D */
	spi-flash@0 {
		compatible = "st,m25l1605d";
		spi-max-frequency = <86000000>;
		reg = <0>;
	};
};

&pcie {
	status = "okay";
	/* Fresco Logic USB3.0 xHCI controller */
	pcie-port@0 {
		status = "okay";
		reset-gpios = <&gpio0 26 1>;
		reset-delay-us = <20000>;
		pinctrl-0 = <&pmx_camera_gpio>;
		pinctrl-names = "default";
	};
	/* Mini-PCIe slot */
	pcie-port@1 {
		status = "okay";
		reset-gpios = <&gpio0 25 1>;
	};
};