aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2017-11-13 22:39:01 +0100
committerMathias Kresin <dev@kresin.me>2018-02-20 19:25:17 +0100
commit6eaf8b3d89571992a0aa7142cfab3f1dcef3c802 (patch)
tree9b6ea80ffdbbfd1bf66af65ebb7ec2e1cce33f36
parentf519fea4c6dbffc9824b0084b8d720507793754d (diff)
downloadupstream-6eaf8b3d89571992a0aa7142cfab3f1dcef3c802.tar.gz
upstream-6eaf8b3d89571992a0aa7142cfab3f1dcef3c802.tar.bz2
upstream-6eaf8b3d89571992a0aa7142cfab3f1dcef3c802.zip
lantiq: kernel 4.14: update dts files
Updated the devicetree source files to make use of the following upstreamed drivers: - xrx200 ethernet phy - reset controller unit - dwc2 - fpi Use our custom xrx200 ethernet phy compatible to support boards, which have switched the vr9 revision during lifetime, with a single devicetree source file. By switching to the dwc2 driver + usb phy framework, we don't need to used our custom gpio power patch and can use a fixed regulator instead. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Mathias Kresin <dev@kresin.me>
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ACMP252.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4518PWR01.dtsi18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4519PW.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4520PW.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV452CQW.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7510PW22.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7518PW.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519PW.dts4
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519RW22.dts39
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW22.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV8539PW22.dts19
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ASL56026.dts16
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV2B.dts4
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV3A.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV5A.dts34
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN1000B.dts4
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN3500.dtsi4
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/DM200.dts13
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/EASY80920.dtsi35
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ3370.dts26
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7320.dts4
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360SL.dts24
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/GIGASX76X.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/H201L.dts19
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2601HNFX.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2812HNUFX.dtsi41
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/TDW89X0.dtsi41
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/VG3503J.dts16
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7510KW22.dtsi34
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7519.dtsi41
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/VR200v.dts40
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR.dts18
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR300.dts40
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/amazonse.dtsi36
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/ar9.dtsi54
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/danube.dtsi36
-rw-r--r--target/linux/lantiq/files-4.14/arch/mips/boot/dts/vr9.dtsi95
38 files changed, 794 insertions, 159 deletions
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ACMP252.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ACMP252.dts
index 2c694029f5..5e1f271606 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ACMP252.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ACMP252.dts
@@ -13,6 +13,18 @@
memory@0 {
reg = <0x0 0x4000000>;
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 3 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -87,9 +99,13 @@
status = "okay";
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpio 3 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4518PWR01.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4518PWR01.dtsi
index de657c6a54..458a387536 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4518PWR01.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4518PWR01.dtsi
@@ -96,6 +96,18 @@
gpios = <&gpiomm 3 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 14 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -178,9 +190,13 @@
req-mask = <0xf>;
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4519PW.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4519PW.dts
index 11e57e14a0..5733d2ce19 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4519PW.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4519PW.dts
@@ -106,6 +106,18 @@
gpios = <&gpiomm 6 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 14 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -175,9 +187,13 @@
req-mask = <0xf>;
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4520PW.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4520PW.dts
index 84d36d7e57..aa4269305b 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4520PW.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV4520PW.dts
@@ -112,6 +112,18 @@
info is missing
*/
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 28 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -199,9 +211,13 @@
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpio 28 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV452CQW.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV452CQW.dts
index 7221c1181e..1e1183d1ba 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV452CQW.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV452CQW.dts
@@ -124,6 +124,18 @@
gpios = <&gpiomm 9 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 28 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -217,9 +229,13 @@
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpio 28 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7510PW22.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7510PW22.dts
index d99e1e3fe4..337f969b34 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7510PW22.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7510PW22.dts
@@ -114,6 +114,18 @@
lantiq,output = <0>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 8 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gsw {
@@ -181,9 +193,13 @@
};
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpio 8 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7518PW.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7518PW.dts
index a0924f279d..1d6f404ee9 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7518PW.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7518PW.dts
@@ -145,6 +145,18 @@
lantiq,open-drain = <1>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 14 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpiomm {
@@ -213,9 +225,13 @@
};
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519PW.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519PW.dts
index 4d0ddfd3a7..39dcf45619 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519PW.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519PW.dts
@@ -214,6 +214,10 @@
};
};
+&usb_phy {
+ status = "okay";
+};
+
/* warning: passive port only works with active devices */
&usb {
status = "okay";
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519RW22.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519RW22.dts
index d361fde6d4..40607aebdd 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519RW22.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV7519RW22.dts
@@ -3,6 +3,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "arcadyan,arv7519rw22", "lantiq,xway", "lantiq,vr9";
@@ -24,13 +25,6 @@
reg = <0x0 0x8000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware1 = "lantiq/xrx200_phy22f_a14.bin"; /*VR9 1.1*/
- firmware2 = "lantiq/xrx200_phy22f_a22.bin"; /*VR9 1.2*/
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -87,6 +81,18 @@
gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 32 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&eth0 {
@@ -159,6 +165,13 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_FE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_FE>;
+};
&gpio {
pinctrl-names = "default";
@@ -221,12 +234,20 @@
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
+&usb_phy1 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 32 GPIO_ACTIVE_HIGH>;
};
&usb1 {
status = "okay";
- gpios = <&gpio 32 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW.dts
index bb73a26d56..7b337b4f5f 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW.dts
@@ -152,6 +152,18 @@
lantiq,open-drain = <1>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpiomm 0 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpiomm {
@@ -218,9 +230,13 @@
};
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpiomm 0 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW22.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW22.dts
index 9dfd515b35..feb92d4d9d 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW22.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV752DPW22.dts
@@ -122,6 +122,18 @@
gpios = <&gpiomm 14 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpiomm 0 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -240,9 +252,13 @@
};
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpiomm 0 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV8539PW22.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV8539PW22.dts
index adc1dd8354..1e39380f60 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV8539PW22.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ARV8539PW22.dts
@@ -76,6 +76,18 @@
telefonie green is missing
*/
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 14 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -164,10 +176,13 @@
};
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
- lantiq,portmask = <0x3>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ASL56026.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ASL56026.dts
index 35376567c1..9a78822be3 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ASL56026.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ASL56026.dts
@@ -3,6 +3,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "alphanetworks,asl56026", "lantiq,xway", "lantiq,vr9";
@@ -24,13 +25,6 @@
reg = <0x0 0x2000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware1 = "lantiq/xrx200_phy22f_a14.bin"; /*VR9 1.1*/
- firmware2 = "lantiq/xrx200_phy22f_a22.bin"; /*VR9 1.2*/
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -120,6 +114,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_FE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_FE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV2B.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV2B.dts
index d3be43cd99..105dae408d 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV2B.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV2B.dts
@@ -248,6 +248,10 @@
};
};
+&usb_phy {
+ status = "okay";
+};
+
&usb {
status = "okay";
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV3A.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV3A.dts
index afb1b26c52..6bba7e4201 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV3A.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV3A.dts
@@ -90,6 +90,18 @@
gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 33 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -193,7 +205,11 @@
};
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV5A.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV5A.dts
index feefc8519e..a3be0a5c9c 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV5A.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/BTHOMEHUBV5A.dts
@@ -3,6 +3,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "bt,homehub-v5a", "lantiq,xway", "lantiq,vr9";
@@ -25,13 +26,6 @@
reg = <0x0 0x8000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware1 = "lantiq/xrx200_phy11g_a14.bin"; /*VR9 1.1*/
- firmware2 = "lantiq/xrx200_phy11g_a22.bin"; /*VR9 1.2*/
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -108,6 +102,18 @@
gpios = <&gpio 19 GPIO_ACTIVE_HIGH>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 33 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&eth0 {
@@ -179,6 +185,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -275,7 +289,11 @@
};
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN1000B.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN1000B.dts
index 42fb51fdd8..8982c27bef 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN1000B.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN1000B.dts
@@ -164,6 +164,10 @@
};
};
+&usb_phy {
+ status = "okay";
+};
+
&usb {
status = "okay";
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN3500.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN3500.dtsi
index 775f3f2917..614845f09d 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN3500.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DGN3500.dtsi
@@ -204,6 +204,10 @@
};
};
+&usb_phy0 {
+ status = "okay";
+};
+
&usb0 {
status = "okay";
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DM200.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DM200.dts
index bd022c5c48..8302336bd4 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DM200.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/DM200.dts
@@ -3,6 +3,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "netgear,dm200", "lantiq,xway", "lantiq,vr9";
@@ -24,12 +25,6 @@
reg = <0x0 0x4000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware = "lantiq/xrx200_phy22f_a22.bin";
- phys = [ 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -91,6 +86,8 @@
};
&eth0 {
+ lantiq,phys = <&gphy1>;
+
lan: interface@0 {
compatible = "lantiq,xrx200-pdi";
#address-cells = <1>;
@@ -118,6 +115,10 @@
};
};
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_FE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/EASY80920.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/EASY80920.dtsi
index c24c5d97d6..464ab5bd4e 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/EASY80920.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/EASY80920.dtsi
@@ -1,6 +1,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "lantiq,easy80920", "lantiq,xway", "lantiq,vr9";
@@ -22,13 +23,6 @@
reg = <0x0 0x4000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware1 = "lantiq/xrx200_phy11g_a14.bin";
- firmware2 = "lantiq/xrx200_phy11g_a22.bin";
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -87,6 +81,18 @@
gpios = <&stp 12 GPIO_ACTIVE_HIGH>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 33 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&eth0 {
@@ -167,6 +173,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -288,8 +302,11 @@
/* lantiq,rising; */
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
- lantiq,portmask = <0x3>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ3370.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ3370.dts
index 1fc42fe51f..a958fc67aa 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ3370.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ3370.dts
@@ -3,6 +3,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "avm,fritz3370", "lantiq,xway", "lantiq,vr9";
@@ -26,12 +27,6 @@
reg = <0x0 0x8000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware = "lantiq/xrx200_phy11g_a14.bin";
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -147,6 +142,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -280,9 +283,14 @@
};
};
+/*
+ * TODO: add phy-supply, gpio 5 GPIO_ACTIVE_HIGH and gpio 14 GPIO_ACTIVE_HIGH are
+ * related
+ */
+&usb_phy0 {
+ status = "okay";
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 5 GPIO_ACTIVE_HIGH
- &gpio 14 GPIO_ACTIVE_HIGH>;
- lantiq,portmask = <0x3>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7320.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7320.dts
index e6334d46df..eed4ae316a 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7320.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7320.dts
@@ -154,6 +154,10 @@
};
};
+&usb_phy0 {
+ status = "okay";
+};
+
&usb0 {
status = "okay";
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360SL.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360SL.dts
index 29bb22976c..a0f5d8ee05 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360SL.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360SL.dts
@@ -3,6 +3,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "avm,fritz7360sl", "lantiq,xway", "lantiq,vr9";
@@ -25,12 +26,6 @@
reg = <0x0 0x8000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware = "lantiq/xrx200_phy11g_a22.bin";
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -142,6 +137,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -219,9 +222,16 @@
};
};
+&usb_phy0 {
+ status = "okay";
+};
+
+&usb_phy1 {
+ status = "okay";
+};
+
&usb0 {
status = "okay";
- lantiq,portmask = <0x3>;
};
&usb1 {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/GIGASX76X.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/GIGASX76X.dts
index f2783e7e3b..fc028bb5f1 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/GIGASX76X.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/GIGASX76X.dts
@@ -39,6 +39,18 @@
gpios = <&gpio 19 GPIO_ACTIVE_HIGH>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 29 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -103,9 +115,13 @@
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
};
+&usb_phy {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb {
status = "okay";
- gpios = <&gpio 29 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/H201L.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/H201L.dts
index 6229d40913..43a4b42d82 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/H201L.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/H201L.dts
@@ -104,6 +104,18 @@
gpios = <&gpio 7 GPIO_ACTIVE_HIGH>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 36 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -151,7 +163,12 @@
};
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
+
&usb0 {
status = "okay";
- gpios = <&gpio 36 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2601HNFX.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2601HNFX.dts
index b72b604539..267a4f3a71 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2601HNFX.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2601HNFX.dts
@@ -128,6 +128,18 @@
lantiq,function = "mdio";
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 9 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gsw {
@@ -172,7 +184,11 @@
lantiq,groups = <0x3>;
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 9 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2812HNUFX.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2812HNUFX.dtsi
index 4d61d8e923..03858afef4 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2812HNUFX.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/P2812HNUFX.dtsi
@@ -1,6 +1,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "zyxel,p-2812hnu", "lantiq,xway", "lantiq,vr9";
@@ -23,13 +24,6 @@
reg = <0x0 0x8000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware1 = "lantiq/xrx200_phy11g_a14.bin"; /*VR9 1.1*/
- firmware2 = "lantiq/xrx200_phy11g_a22.bin"; /*VR9 1.2*/
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -102,6 +96,18 @@
gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 33 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&eth0 {
@@ -174,6 +180,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -264,13 +278,20 @@
lantiq,phy2 = <0x0>;
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
+&usb_phy1 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
- lantiq,portmask = <0x3>;
};
&usb1 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/TDW89X0.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/TDW89X0.dtsi
index 53ed8338c3..e176bca30f 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/TDW89X0.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/TDW89X0.dtsi
@@ -1,6 +1,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "tplink,tdw89x0", "lantiq,xway", "lantiq,vr9";
@@ -25,12 +26,6 @@
reg = <0x0 0x4000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware = "lantiq/xrx200_phy11g_a22.bin";
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -92,6 +87,19 @@
gpios = <&ath9k 0 GPIO_ACTIVE_HIGH>;
};
};
+
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 33 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&eth0 {
@@ -155,6 +163,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -263,13 +279,20 @@
};
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
+&usb_phy1 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
- lantiq,portmask = <0x3>;
};
&usb1 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VG3503J.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VG3503J.dts
index 2257d21d7b..bb001cb219 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VG3503J.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VG3503J.dts
@@ -3,6 +3,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "arcadyan,vg3503j", "lantiq,xway", "lantiq,vr9";
@@ -24,13 +25,6 @@
reg = <0x0 0x2000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware1 = "lantiq/xrx200_phy11g_a14.bin"; /*VR9 1.1*/
- firmware2 = "lantiq/xrx200_phy11g_a22.bin"; /*VR9 1.2*/
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -109,6 +103,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7510KW22.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7510KW22.dtsi
index 829e8c3d7e..8f22380cc9 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7510KW22.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7510KW22.dtsi
@@ -1,6 +1,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "arcadyan,vgv7510kw22", "lantiq,xway", "lantiq,vr9";
@@ -23,13 +24,6 @@
reg = <0x0 0x4000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware1 = "lantiq/xrx200_phy22f_a14.bin"; /*VR9 1.1*/
- firmware2 = "lantiq/xrx200_phy22f_a22.bin"; /*VR9 1.2*/
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -98,6 +92,18 @@
gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 47 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&eth0 {
@@ -171,6 +177,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_FE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_FE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -237,9 +251,13 @@
status = "disabled";
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 47 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7519.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7519.dtsi
index 2d83e2e464..297f5f7f4f 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7519.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VGV7519.dtsi
@@ -1,6 +1,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "arcadyan,vgv7519", "lantiq,xway", "lantiq,vr9";
@@ -23,13 +24,6 @@
reg = <0x0 0x4000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware1 = "lantiq/xrx200_phy11g_a14.bin"; /*VR9 1.1*/
- firmware2 = "lantiq/xrx200_phy11g_a22.bin"; /*VR9 1.2*/
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -118,6 +112,18 @@
gpios = <&stp 15 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 32 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&eth0 {
@@ -191,6 +197,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -272,15 +286,22 @@
/* lantiq,rising; */
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
+&usb_phy1 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 32 GPIO_ACTIVE_HIGH>;
- lantiq,portmask = <0x3>;
};
&usb1 {
status = "okay";
- gpios = <&gpio 32 GPIO_ACTIVE_HIGH>;
};
&vmmc {
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VR200v.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VR200v.dts
index ccdc9d7363..d0fcd6fcd0 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VR200v.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/VR200v.dts
@@ -3,6 +3,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "tplink,vr200v", "lantiq,xway", "lantiq,vr9";
@@ -26,12 +27,6 @@
reg = <0x0 0x7f00000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware = "lantiq/xrx200_phy11g_a22.bin";
- phys = [ 00 01 ];
- };
-
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
@@ -98,6 +93,18 @@
gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 33 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&eth0 {
@@ -161,6 +168,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_GE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -271,13 +286,20 @@
};
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
+&usb_phy1 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
- lantiq,portmask = <0x3>;
};
&usb1 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR.dts
index 9d0a8ac9e0..6bee3308a2 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR.dts
@@ -97,6 +97,18 @@
default-state = "on";
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 36 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&gpio {
@@ -177,7 +189,11 @@
};
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 36 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR300.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR300.dts
index b187ab77f3..4092b6b6eb 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR300.dts
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/WBMR300.dts
@@ -3,6 +3,7 @@
#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
+#include <dt-bindings/mips/lantiq_rcu_gphy.h>
/ {
compatible = "buffalo,wbmr-300hpd", "lantiq,xway", "lantiq,vr9";
@@ -26,12 +27,6 @@
reg = <0x0 0x4000000>;
};
- gphy-xrx200 {
- compatible = "lantiq,phy-xrx200";
- firmware = "lantiq/xrx200_phy22f_a22.bin";
- phys = [ 00 01 ];
- };
-
gpio_poweroff {
compatible = "gpio-poweroff";
gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
@@ -145,6 +140,18 @@
gpios = <&gpio 49 GPIO_ACTIVE_HIGH>;
};
};
+
+ usb_vbus: regulator-usb-vbus {
+ compatible = "regulator-fixed";
+
+ regulator-name = "USB_VBUS";
+
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio 33 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
};
&eth0 {
@@ -206,6 +213,14 @@
};
};
+&gphy0 {
+ lantiq,gphy-mode = <GPHY_MODE_FE>;
+};
+
+&gphy1 {
+ lantiq,gphy-mode = <GPHY_MODE_FE>;
+};
+
&gpio {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
@@ -295,13 +310,20 @@
};
};
+&usb_phy0 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
+&usb_phy1 {
+ status = "okay";
+ phy-supply = <&usb_vbus>;
+};
+
&usb0 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
- lantiq,portmask = <0x3>;
};
&usb1 {
status = "okay";
- gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/amazonse.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/amazonse.dtsi
index 77b9342cba..f216adf36f 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/amazonse.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/amazonse.dtsi
@@ -75,8 +75,36 @@
};
rcu0: rcu@203000 {
- compatible = "lantiq,rcu-xway";
+ compatible = "lantiq,ase-rcu", "simple-mfd", "syscon";
reg = <0x203000 0x1000>;
+ ranges = <0x0 0x203000 0x100>;
+ big-endian;
+
+ reset: reset-controller@10 {
+ compatible = "lantiq,danube-reset";
+ reg = <0x10 4>, <0x14 4>;
+
+ #reset-cells = <2>;
+ };
+
+ usb_phy: usb2-phy@18 {
+ compatible = "lantiq,ase-usb2-phy";
+ reg = <0x18 4>;
+ status = "disabled";
+
+ resets = <&reset 4 4>;
+ reset-names = "ctrl";
+ #phy-cells = <0>;
+ };
+
+ reboot@10 {
+ compatible = "syscon-reboot";
+ reg = <0x10 4>;
+
+ regmap = <&rcu0>;
+ offset = <0x10>;
+ mask = <0x40000000>;
+ };
};
};
@@ -134,13 +162,15 @@
interrupts = <81>;
};
- usb: ifxhcd@e101000 {
- compatible = "lantiq,ase-usb", "lantiq,ifxhcd-ase";
+ usb: usb@e101000 {
+ compatible = "lantiq,ase-usb";
reg = <0xe101000 0x1000
0xe120000 0x3f000>;
interrupt-parent = <&icu0>;
interrupts = <39>;
dr_mode = "host";
+ phys = <&usb_phy>;
+ phy-names = "usb2-phy";
status = "disabled";
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ar9.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ar9.dtsi
index 0ed1d4cce2..48e0d95d63 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ar9.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/ar9.dtsi
@@ -42,8 +42,10 @@
};
watchdog@803f0 {
- compatible = "lantiq,wdt";
+ compatible = "lantiq,xrx100-wdt", "lantiq,xrx100-wdt";
reg = <0x803f0 0x10>;
+
+ regmap = <&rcu0>;
};
};
@@ -75,8 +77,46 @@
};
rcu0: rcu@203000 {
- compatible = "lantiq,rcu-xway";
+ compatible = "lantiq,xrx100-rcu", "simple-mfd", "syscon";
reg = <0x203000 0x1000>;
+ ranges = <0x0 0x203000 0x100>;
+ big-endian;
+
+ reset: reset-controller@10 {
+ compatible = "lantiq,xrx100-reset", "lantiq,danube-reset";
+ reg = <0x10 4>, <0x14 4>;
+
+ #reset-cells = <2>;
+ };
+
+ usb_phy0: usb2-phy@18 {
+ compatible = "lantiq,xrx100-usb2-phy";
+ reg = <0x18 4>;
+ status = "disabled";
+
+ resets = <&reset 4 4>;
+ reset-names = "ctrl";
+ #phy-cells = <0>;
+ };
+
+ usb_phy1: usb2-phy@34 {
+ compatible = "lantiq,xrx100-usb2-phy";
+ reg = <0x34 4>;
+ status = "disabled";
+
+ resets = <&reset 28 28>;
+ reset-names = "ctrl";
+ #phy-cells = <0>;
+ };
+
+ reboot@10 {
+ compatible = "syscon-reboot";
+ reg = <0x10 4>;
+
+ regmap = <&rcu0>;
+ offset = <0x10>;
+ mask = <0x40000000>;
+ };
};
};
@@ -144,23 +184,27 @@
interrupts = <112 113 114>;
};
- usb0: ifxhcd@e101000 {
- compatible = "lantiq,arx100-usb", "lantiq,ifxhcd-arx100";
+ usb0: usb@e101000 {
+ compatible = "lantiq,arx100-usb";
reg = <0xe101000 0x1000
0xe120000 0x3f000>;
interrupt-parent = <&icu0>;
interrupts = <62 91>;
dr_mode = "host";
+ phys = <&usb_phy0>;
+ phy-names = "usb2-phy";
status = "disabled";
};
- usb1: ifxhcd@e106000 {
+ usb1: usb@e106000 {
compatible = "lantiq,arx100-usb";
reg = <0xe106000 0x1000
0xe1e0000 0x3f000>;
interrupt-parent = <&icu0>;
interrupts = <91>;
dr_mode = "host";
+ phys = <&usb_phy1>;
+ phy-names = "usb2-phy";
status = "disabled";
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/danube.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/danube.dtsi
index 1e1ce61f73..af4c795af2 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/danube.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/danube.dtsi
@@ -83,8 +83,36 @@
};
rcu0: rcu@203000 {
- compatible = "lantiq,rcu-xway";
+ compatible = "lantiq,danube-rcu", "simple-mfd", "syscon";
reg = <0x203000 0x1000>;
+ ranges = <0x0 0x203000 0x100>;
+ big-endian;
+
+ reset: reset-controller@10 {
+ compatible = "lantiq,danube-reset";
+ reg = <0x10 4>, <0x14 4>;
+
+ #reset-cells = <2>;
+ };
+
+ usb_phy: usb2-phy@18 {
+ compatible = "lantiq,danube-usb2-phy";
+ reg = <0x18 4>;
+ status = "disabled";
+
+ resets = <&reset 4 4>;
+ reset-names = "ctrl";
+ #phy-cells = <0>;
+ };
+
+ reboot@10 {
+ compatible = "syscon-reboot";
+ reg = <0x10 4>;
+
+ regmap = <&rcu0>;
+ offset = <0x10>;
+ mask = <0x40000000>;
+ };
};
};
@@ -152,13 +180,15 @@
interrupts = <112 113 114>;
};
- usb: ifxhcd@e101000 {
- compatible = "lantiq,danube-usb", "lantiq,ifxhcd-danube";
+ usb: usb@e101000 {
+ compatible = "lantiq,danube-usb";
reg = <0xe101000 0x1000
0xe120000 0x3f000>;
interrupt-parent = <&icu0>;
interrupts = <62>;
dr_mode = "host";
+ phys = <&usb_phy>;
+ phy-names = "usb2-phy";
status = "disabled";
};
diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/vr9.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/vr9.dtsi
index 14427900a6..adad9506d9 100644
--- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/vr9.dtsi
+++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/vr9.dtsi
@@ -46,8 +46,10 @@
};
watchdog@803f0 {
- compatible = "lantiq,wdt";
+ compatible = "lantiq,xrx100-wdt", "lantiq,xrx100-wdt";
reg = <0x803f0 0x10>;
+
+ regmap = <&rcu0>;
};
};
@@ -91,25 +93,81 @@
};
rcu0: rcu@203000 {
- compatible = "lantiq,rcu-xrx200";
- reg = <0x203000 0x1000>;
- /* irq for thermal sensor */
- interrupt-parent = <&icu0>;
- interrupts = <115>;
- };
-
- xbar0: xbar@400000 {
- compatible = "lantiq,xbar-xway";
- reg = <0x400000 0x1000>;
+ compatible = "lantiq,xrx200-rcu", "simple-mfd", "syscon";
+ reg = <0x203000 0x100>;
+ ranges = <0x0 0x203000 0x100>;
+ big-endian;
+
+ gphy0: gphy@20 {
+ compatible = "lantiq,xrx200-gphy";
+ reg = <0x20 0x4>;
+
+ resets = <&reset0 31 30>, <&reset1 7 7>;
+ reset-names = "gphy", "gphy2";
+ };
+
+ gphy1: gphy@68 {
+ compatible = "lantiq,xrx200-gphy";
+ reg = <0x68 0x4>;
+
+ resets = <&reset0 29 28>, <&reset1 6 6>;
+ reset-names = "gphy", "gphy2";
+ };
+
+ reset0: reset-controller@10 {
+ compatible = "lantiq,xrx200-reset";
+ reg = <0x10 4>, <0x14 4>;
+
+ #reset-cells = <2>;
+ };
+
+ reset1: reset-controller@48 {
+ compatible = "lantiq,xrx200-reset";
+ reg = <0x48 4>, <0x24 4>;
+
+ #reset-cells = <2>;
+ };
+
+ usb_phy0: usb2-phy@18 {
+ compatible = "lantiq,xrx200-usb2-phy";
+ reg = <0x18 4>, <0x38 4>;
+ status = "disabled";
+
+ resets = <&reset1 4 4>, <&reset0 4 4>;
+ reset-names = "phy", "ctrl";
+ #phy-cells = <0>;
+ };
+
+ usb_phy1: usb2-phy@34 {
+ compatible = "lantiq,xrx200-usb2-phy";
+ reg = <0x34 4>, <0x3c 4>;
+ status = "disabled";
+
+ resets = <&reset1 5 4>, <&reset0 4 4>;
+ reset-names = "phy", "ctrl";
+ #phy-cells = <0>;
+ };
+
+ reboot@10 {
+ compatible = "syscon-reboot";
+ reg = <0x10 4>;
+
+ regmap = <&rcu0>;
+ offset = <0x10>;
+ mask = <0x40000000>;
+ };
};
};
fpi@10000000 {
+ compatible = "lantiq,xrx200-fpi", "simple-bus";
+ ranges = <0x0 0x10000000 0xf000000>;
+ reg = <0x1f400000 0x1000>,
+ <0x10000000 0xf000000>;
+ regmap = <&rcu0>;
+ offset-endianness = <0x4c>;
#address-cells = <1>;
#size-cells = <1>;
- compatible = "lantiq,fpi", "simple-bus";
- ranges = <0x0 0x10000000 0xeefffff>;
- reg = <0x10000000 0xef00000>;
localbus: localbus@0 {
#address-cells = <2>;
@@ -191,12 +249,14 @@
usb0: usb@e101000 {
status = "disabled";
- compatible = "lantiq,xrx200-usb", "lantiq,ifxhcd-xrx200";
+ compatible = "lantiq,xrx200-usb";
reg = <0xe101000 0x1000
0xe120000 0x3f000>;
interrupt-parent = <&icu0>;
interrupts = <62 91>;
dr_mode = "host";
+ phys = <&usb_phy0>;
+ phy-names = "usb2-phy";
};
usb1: usb@e106000 {
@@ -206,6 +266,8 @@
interrupt-parent = <&icu0>;
interrupts = <91>;
dr_mode = "host";
+ phys = <&usb_phy1>;
+ phy-names = "usb2-phy";
};
eth0: eth@e108000 {
@@ -219,6 +281,9 @@
>;
interrupt-parent = <&icu0>;
interrupts = <75 73 72>;
+ resets = <&reset0 21 16>, <&reset0 8 8>;
+ reset-names = "switch", "ppe";
+ lantiq,phys = <&gphy0>, <&gphy1>;
};
mei@e116000 {