linux-3.12/kirkwood-dns320l.dts
changeset 5 bca986acd412
child 9 b6ea190b8868
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/linux-3.12/kirkwood-dns320l.dts	Fri Sep 13 16:05:35 2013 +0200
@@ -0,0 +1,202 @@
+/dts-v1/;
+
+#include "kirkwood.dtsi"
+#include "kirkwood-6281.dtsi"
+
+/ {
+	model = "D-Link DNS-320L";
+	compatible = "dlink,dns-320l", "marvell,kirkwood-88f6702", "marvell,kirkwood";
+
+	memory {
+		device_type = "memory";
+		reg = <0x00000000 0x10000000>;
+	};
+
+	chosen {
+		bootargs = "console=ttyS0,115200 earlyprintk";
+	};
+
+	ocp@f1000000 {
+		serial@12000 {
+			status = "okay";
+		};
+
+		serial@12100 {
+			pinctrl-0 = <&pmx_uart1>;
+			pinctrl-names = "default";
+			status = "okay";
+		};
+
+		pinctrl: pinctrl@10000 {
+
+			pinctrl-0 = <&pmx_button_power>;
+			pinctrl-names = "default";
+
+			pmx_sata0: pmx-sata0 {
+				marvell,pins = "mpp20";
+				marvell,function = "sata1";
+			};
+			pmx_sata1: pmx-sata1 {
+				marvell,pins = "mpp21";
+				marvell,function = "sata0";
+			};
+			pmx_led_red_right_hdd: pmx-led-red-right-hdd {
+			    marvell,pins = "mpp22";
+			    marvell,function = "gpio";
+			};
+			pmx_led_red_left_hdd: pmx-led-red-left-hdd {
+			    marvell,pins = "mpp23";
+			    marvell,function = "gpio";
+			};
+			pmx_power_sata: pmx-power-sata {
+			    marvell,pins = "mpp24";
+			    marvell,function = "gpio";
+			};
+			pmx_led_usb_blue: pmx-led-usb-blue {
+			    marvell,pins = "mpp25";
+			    marvell,function = "gpio";
+			};
+			pmx_led_usb_orange: pmx-led-usb-orange {
+				marvell,pins = "mpp26";
+				marvell,function = "gpio";
+			};
+			pmx_button_usb_copy: pmx-button-usb-copy {
+				marvell,pins = "mpp27";
+				marvell,function = "gpio";
+			};			
+			pmx_button_reset: pmx-button-reset {
+				marvell,pins = "mpp28";
+				marvell,function = "gpio";
+			};
+			pmx_button_power: pmx-button-power { // I can't get this one to trigger a button press...
+				marvell,pins = "mpp29";
+				marvell,function = "gpio";
+			};						
+		};
+		sata@80000 {
+			status = "okay";
+			nr-ports = <2>;
+		};
+
+		nand@3000000 {
+			pinctrl-0 = <&pmx_nand>;
+			pinctrl-names = "default";
+			status = "okay";
+			chip-delay = <40>;
+
+			partition@0 {
+				label = "u-boot";
+				reg = <0x0000000 0x100000>;
+				read-only;
+			};
+
+			partition@100000 {
+				label = "uImage";
+				reg = <0x0100000 0x500000>;
+			};
+
+			partition@600000 {
+				label = "ramdisk";
+				reg = <0x0600000 0x500000>;
+			};
+
+			partition@b00000 {
+				label = "image";
+				reg = <0x0b00000 0x6400000>;
+			};
+
+			partition@6f00000 {
+				label = "mini firmware";
+				reg = <0x6f00000 0xa00000>;
+			};
+
+			partition@7900000 {
+				label = "config";
+				reg = <0x7900000 0x500000>;
+			};
+			partition@7e00000 {
+			    label = "my-dlink";
+			    reg = <0x7e00000 0x200000>;
+			};
+		};
+	};
+
+	gpio_keys {
+		compatible = "gpio-keys";
+		pinctrl-0 = <&pmx_button_reset &pmx_button_usb_copy>;
+		pinctrl-names = "default";
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		button@1 {
+			label = "Reset push button";
+			linux,code = <0x198>;
+			gpios = <&gpio0 28 1>;
+		};
+		button@2 {
+			label = "USB unmount button";
+			linux,code = <161>;
+			gpios = <&gpio0 27 1>;
+		};
+	};
+
+	gpio-leds {
+		compatible = "gpio-leds";
+		pinctrl-0 = <&pmx_led_usb_blue &pmx_led_usb_orange
+			     &pmx_led_red_left_hdd &pmx_led_red_right_hdd>;
+		pinctrl-names = "default";
+
+		blue-usb {
+			label = "dns320l:blue:usb";
+			gpios = <&gpio0 25 0>; 
+		};
+		orange-l_hdd {
+			label = "dns320l:orange:l_hdd";
+			gpios = <&gpio0 22 0>; 
+		};
+		orange-r_hdd {
+			label = "dns320l:orange:r_hdd";
+			gpios = <&gpio0 23 0>; 
+		};
+		orange-usb {
+			label = "dns320l:orange:usb";
+			gpios = <&gpio0 26 0>; 
+		};
+	};
+
+	regulators {
+		compatible = "simple-bus";
+		#address-cells = <1>;
+		#size-cells = <0>;
+		pinctrl-0 = <&pmx_power_sata>;
+		pinctrl-names = "default";
+
+		sata_power: regulator@1 {
+			compatible = "regulator-fixed";
+			reg = <1>;
+			regulator-name = "SATA Power";
+			regulator-min-microvolt = <5000000>;
+			regulator-max-microvolt = <5000000>;
+			enable-active-high;
+			regulator-always-on;
+			regulator-boot-on;
+			gpio = <&gpio1 24 0>;
+		};
+	};
+};
+
+&mdio {
+	status = "okay";
+
+	ethphy0: ethernet-phy@0 {
+		device_type = "ethernet-phy";
+		reg = <0>;
+	};
+};
+
+&eth0 {
+	status = "okay";
+	ethernet0-port@0 {
+		phy-handle = <&ethphy0>;
+	};
+};