/dts-v1/;

#include "mt7621.dtsi"

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>

/ {
	compatible = "gnubee,gb-pc1", "mediatek,mt7621-soc";
	model = "GB-PC1";

	memory@0 {
		device_type = "memory";
		reg = <0x00000000 0x1c000000>,
		      <0x20000000 0x04000000>;
	};

	chosen {
		bootargs = "console=ttyS0,57600";
	};

	palmbus: palmbus@1E000000 {
		i2c@900 {
			status = "okay";
		};
	};

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

		reset {
			label = "reset";
			gpios = <&gpio 18 GPIO_ACTIVE_HIGH>;
			linux,code = <KEY_RESTART>;
		};
	};

	gpio-leds {
		compatible = "gpio-leds";

		power {
			label = "green:power";
			gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
			linux,default-trigger = "default-on";
		};

		system {
			label = "green:system";
			gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
			linux,default-trigger = "disk-activity";
		};
	};
};

&sdhci {
	status = "okay";
};

&spi0 {
	status = "okay";

	m25p80@0 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "jedec,spi-nor";
		reg = <0>;
		spi-max-frequency = <50000000>;
		broken-flash-reset;

		partition@0 {
			label = "u-boot";
			reg = <0x0 0x30000>;
			read-only;
		};

		partition@30000 {
			label = "u-boot-env";
			reg = <0x30000 0x10000>;
			read-only;
		};

		factory: partition@40000 {
			label = "factory";
			reg = <0x40000 0x10000>;
			read-only;
		};

		partition@50000 {
			label = "firmware";
			reg = <0x50000 0x1fb0000>;
		};
	};
};

&pcie {
	status = "okay";
};

&pinctrl {
	pinctrl-names = "default";
	pinctrl-0 = <&state_default>;

	state_default: state-default {
		gpio-pinmux {
			groups = "rgmii2", "uart3", "wdt";
			function = "gpio";
		};
	};
};

&switch0 {
	ports {
		port@0 {
			status = "okay";
			label = "ethblack";
		};

		port@4 {
			status = "okay";
			label = "ethblue";
		};
	};
};
