/dts-v1/;

#include "bcm6368.dtsi"

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

/ {
	model = "Observa VH4032N";
	compatible = "observa,vh4032n", "brcm,bcm6368";

	chosen {
		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
	};

	gpio-keys-polled {
		compatible = "gpio-keys-polled";
		#address-cells = <1>;
		#size-cells = <0>;
		poll-interval = <20>;
		debounce-interval = <60>;

		reset {
			label = "reset";
			gpios = <&gpio1 2 1>;
			linux,code = <KEY_RESTART>;
		};
		wps {
			label = "wps";
			gpios = <&gpio1 3 1>;
			linux,code = <KEY_WPS_BUTTON>;
		};
	};

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

		dsl_blue {
			label = "VH4032N:blue:dsl";
			gpios = <&gpio0 2 1>;
		};
		dsl_red {
			label = "VH4032N:red:dsl";
			gpios = <&gpio0 5 1>;
		};
		hspa_blue {
			label = "VH4032N:blue:hspa";
			gpios = <&gpio0 11 1>;
		};
		hspa_red {
			label = "VH4032N:red:hspa";
			gpios = <&gpio0 12 1>;
		};
		power_blue {
			label = "VH4032N:blue:power";
			gpios = <&gpio0 22 0>;
		};
		power_red {
			label = "VH4032N:red:power";
			gpios = <&gpio0 24 0>;
			default-state = "on";
		};
		voice_blue {
			label = "VH4032N:blue:voice";
			gpios = <&gpio0 25 1>;
		};
		voice_red {
			label = "VH4032N:red:voice";
			gpios = <&gpio0 26 1>;
		};
	};
};

&gpio0 {
	usb_hub_reset {
		gpio-hog;
		gpios = <27 0>;
		output-high;
		line-name = "usb-hub-reset-gpio";
	};
};

&pflash {
	status = "ok";

	linux,part-probe = "bcm63xxpart";

	cfe@0 {
		label = "CFE";
		reg = <0x0000000 0x0020000>;
		read-only;
	};

	linux@20000 {
		label = "linux";
		reg = <0x0020000 0x1fc0000>;
	};

	nvram@1fe0000 {
		label = "nvram";
		reg = <0x1fe0000 0x020000>;
	};
};
