-/include/ "vr9.dtsi"
+#include "vr9.dtsi"
+
+#include <dt-bindings/input/input.h>
/ {
chosen {
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
};
+ aliases {
+ /* the power led can't be controlled, use the wps led instead */
+ led-boot = &wps;
+ led-failsafe = &wps;
+
+ led-dsl = &dsl;
+ led-internet = &internet;
+ led-wifi = &wifi;
+ led-usb = &usb0;
+ led-usb2 = &usb2;
+ };
+
memory@0 {
reg = <0x0 0x4000000>;
};
lantiq,open-drain = <0>;
lantiq,output = <1>;
};
- spi-in {
- lantiq,pins = "io16";
- lantiq,open-drain = <1>;
- lantiq,pull = <2>;
- };
- spi-out {
- lantiq,pins = "io10", "io17", "io18", "io21";
- lantiq,open-drain = <0>;
- lantiq,pull = <2>;
- };
pcie-rst {
lantiq,pins = "io38";
lantiq,pull = <0>;
lantiq,output = <1>;
};
};
- };
-
- eth@E108000 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "lantiq,xrx200-net";
- reg = < 0xE108000 0x3000 /* switch */
- 0xE10B100 0x70 /* mdio */
- 0xE10B1D8 0x30 /* mii */
- 0xE10B308 0x30 /* pmac */
- >;
- interrupt-parent = <&icu0>;
- interrupts = <73 72>;
-
- lan: interface@0 {
- compatible = "lantiq,xrx200-pdi";
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- mtd-mac-address = <&ath9k_cal 0xf100>;
- lantiq,switch;
-
- ethernet@0 {
- compatible = "lantiq,xrx200-pdi-port";
- reg = <0>;
- phy-mode = "rgmii";
- phy-handle = <&phy0>;
- // gpios = <&gpio 42 1>;
- };
- ethernet@5 {
- compatible = "lantiq,xrx200-pdi-port";
- reg = <5>;
- phy-mode = "rgmii";
- phy-handle = <&phy5>;
- };
- ethernet@2 {
- compatible = "lantiq,xrx200-pdi-port";
- reg = <2>;
- phy-mode = "gmii";
- phy-handle = <&phy11>;
- };
- ethernet@3 {
- compatible = "lantiq,xrx200-pdi-port";
- reg = <4>;
- phy-mode = "gmii";
- phy-handle = <&phy13>;
- };
- };
-
- mdio@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "lantiq,xrx200-mdio";
- phy0: ethernet-phy@0 {
- reg = <0x0>;
- compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
- };
- phy5: ethernet-phy@5 {
- reg = <0x5>;
- compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
+ pins_spi_default: pins_spi_default {
+ spi_in {
+ lantiq,groups = "spi_di";
+ lantiq,function = "spi";
};
- phy11: ethernet-phy@11 {
- reg = <0x11>;
- compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
- };
- phy13: ethernet-phy@13 {
- reg = <0x13>;
- compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
+ spi_out {
+ lantiq,groups = "spi_do", "spi_clk",
+ "spi_cs4";
+ lantiq,function = "spi";
+ lantiq,output = <1>;
};
};
};
ifxhcd@E101000 {
status = "okay";
- gpios = <&gpio 33 0>;
+ gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
lantiq,portmask = <0x3>;
};
ifxhcd@E106000 {
status = "okay";
- gpios = <&gpio 33 0>;
+ gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
};
};
phys = [ 00 01 ];
};
- pcie {
- compatible = "lantiq,pcie-xway";
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ reset {
+ label = "reset";
+ gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_RESTART>;
+ };
+
+ wifi {
+ label = "wifi";
+ gpios = <&gpio 9 GPIO_ACTIVE_HIGH>;
+ linux,code = <KEY_RFKILL>;
+ linux,input-type = <EV_SW>;
+ };
+
+ wps {
+ label = "wps";
+ gpios = <&gpio 39 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_WPS_BUTTON>;
+ };
};
- spi {
- #address-cells = <1>;
- #size-cells = <1>;
+ gpio-leds {
+ compatible = "gpio-leds";
+ /*
+ power is not controllable via gpio
+ */
+ dsl: dsl {
+ label = "tdw89x0:green:dsl";
+ gpios = <&gpio 4 GPIO_ACTIVE_HIGH>;
+ };
+ internet: internet {
+ label = "tdw89x0:green:internet";
+ gpios = <&gpio 5 GPIO_ACTIVE_HIGH>;
+ };
+ usb0: usb0 {
+ label = "tdw89x0:green:usb";
+ gpios = <&gpio 19 GPIO_ACTIVE_HIGH>;
+ };
+ usb2: usb2 {
+ label = "tdw89x0:green:usb2";
+ gpios = <&gpio 20 GPIO_ACTIVE_HIGH>;
+ };
+ wps: wps {
+ label = "tdw89x0:green:wps";
+ gpios = <&gpio 37 GPIO_ACTIVE_HIGH>;
+ };
+ };
+
+ wifi-leds {
+ compatible = "gpio-leds";
+
+ wifi: wifi {
+ label = "tdw89x0:green:wifi";
+ gpios = <&ath9k 0 GPIO_ACTIVE_HIGH>;
+ };
+ };
+};
- compatible = "spi-gpio";
+&spi {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pins_spi_default>;
- gpio-miso = <&gpio 16 0>;
- gpio-mosi = <&gpio 17 0>;
- gpio-sck = <&gpio 18 0>;
- num-chipselects = <1>;
- cs-gpios = <&gpio 10 1>;
+ status = "ok";
- m25p80@0 {
+ m25p80@4 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <4 0>;
+ spi-max-frequency = <33250000>;
+ m25p,fast-read;
+
+ partitions {
+ compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
- compatible = "en25q64", "m25p80";
- reg = <0 0>;
- linux,modalias = "en25q64";
- spi-max-frequency = <1000000>;
partition@0 {
reg = <0x0 0x20000>;
};
partition@20000 {
- reg = <0x20000 0x6a0000>;
+ reg = <0x20000 0x7a0000>;
label = "firmware";
};
- partition@6c0000 {
- reg = <0x6c0000 0x100000>;
- label = "dsl_fw";
- };
-
partition@7c0000 {
reg = <0x7c0000 0x10000>;
label = "config";
};
};
};
-
- ath9k_eep {
- compatible = "ath9k,eeprom";
- ath,eep-flash = <&ath9k_cal 0x21000>;
- ath,mac-offset = <0xf100>;
- ath,mac-increment;
- ath,led-pin = <0>;
- };
+};
- gpio-keys-polled {
- compatible = "gpio-keys-polled";
+ð0 {
+ lan: interface@0 {
+ compatible = "lantiq,xrx200-pdi";
#address-cells = <1>;
#size-cells = <0>;
- poll-interval = <100>;
- reset {
- label = "reset";
- gpios = <&gpio 0 1>;
- linux,code = <0x198>;
- };
+ reg = <0>;
+ mtd-mac-address = <&ath9k_cal 0xf100>;
+ lantiq,switch;
- wifi {
- label = "wifi";
- gpios = <&gpio 9 0>;
- linux,code = <0xf7>;
- linux,input-type = <5>; /* EV_SW */
+ ethernet@0 {
+ compatible = "lantiq,xrx200-pdi-port";
+ reg = <0>;
+ phy-mode = "rgmii";
+ phy-handle = <&phy0>;
+ // gpios = <&gpio 42 GPIO_ACTIVE_LOW>;
};
-
- wps {
- label = "wps";
- gpios = <&gpio 39 1>;
- linux,code = <0x211>;
+ ethernet@5 {
+ compatible = "lantiq,xrx200-pdi-port";
+ reg = <5>;
+ phy-mode = "rgmii";
+ phy-handle = <&phy5>;
+ };
+ ethernet@2 {
+ compatible = "lantiq,xrx200-pdi-port";
+ reg = <2>;
+ phy-mode = "gmii";
+ phy-handle = <&phy11>;
+ };
+ ethernet@3 {
+ compatible = "lantiq,xrx200-pdi-port";
+ reg = <4>;
+ phy-mode = "gmii";
+ phy-handle = <&phy13>;
};
};
- gpio-leds {
- compatible = "gpio-leds";
-
- dsl {
- label = "dsl";
- gpios = <&gpio 4 0>;
+ mdio@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "lantiq,xrx200-mdio";
+ phy0: ethernet-phy@0 {
+ reg = <0x0>;
+ compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
};
- internet {
- label = "internet";
- gpios = <&gpio 5 0>;
+ phy5: ethernet-phy@5 {
+ reg = <0x5>;
+ compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
};
- usb0 {
- label = "usb";
- gpios = <&gpio 19 0>;
+ phy11: ethernet-phy@11 {
+ reg = <0x11>;
+ compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
};
- usb2 {
- label = "usb2";
- gpios = <&gpio 20 0>;
+ phy13: ethernet-phy@13 {
+ reg = <0x13>;
+ compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
};
- wps {
- label = "wps";
- gpios = <&gpio 37 0>;
+ };
+};
+
+&pcie0 {
+ pcie@0 {
+ reg = <0 0 0 0 0>;
+ #interrupt-cells = <1>;
+ #size-cells = <2>;
+ #address-cells = <3>;
+ device_type = "pci";
+
+ ath9k: wifi@168c,002e {
+ compatible = "pci168c,002e";
+ reg = <0 0 0 0 0>;
+ #gpio-cells = <2>;
+ gpio-controller;
+ qca,no-eeprom;
+ qca,disable-5ghz;
+ mtd-mac-address = <&ath9k_cal 0xf100>;
+ mtd-mac-address-increment = <2>;
};
};
};