[OpenWrt-Devel] [PATCH 4/4] kernel: add uDPU update patches

Russell King linux at armlinux.org.uk
Mon Nov 25 11:46:47 EST 2019


Update the uDPU kernel support, fixing a number of issues:
* make ethernet work again by adding comphy definitions
* slow the I2C bus to give it more chance of actually working
* the SFP cages are designed to support up to 3W modules, which
  would be prevented from initialising without this patch.

Signed-off-by: Russell King <linux at armlinux.org.uk>
---
 ...rm64-dts-uDPU-fix-comphy-definitions.patch | 40 +++++++++++++++++++
 ...-arm64-dts-uDPU-remove-i2c-fast-mode.patch | 35 ++++++++++++++++
 ...ts-uDPU-SFP-cages-support-3W-modules.patch | 38 ++++++++++++++++++
 3 files changed, 113 insertions(+)
 create mode 100644 target/linux/mvebu/patches-4.19/657-arm64-dts-uDPU-fix-comphy-definitions.patch
 create mode 100644 target/linux/mvebu/patches-4.19/658-arm64-dts-uDPU-remove-i2c-fast-mode.patch
 create mode 100644 target/linux/mvebu/patches-4.19/659-arm64-dts-uDPU-SFP-cages-support-3W-modules.patch

diff --git a/target/linux/mvebu/patches-4.19/657-arm64-dts-uDPU-fix-comphy-definitions.patch b/target/linux/mvebu/patches-4.19/657-arm64-dts-uDPU-fix-comphy-definitions.patch
new file mode 100644
index 000000000000..bac9fa9666f1
--- /dev/null
+++ b/target/linux/mvebu/patches-4.19/657-arm64-dts-uDPU-fix-comphy-definitions.patch
@@ -0,0 +1,40 @@
+From 9c222a1d78a1700220e38feb270f00d2ddd3c5ab Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel at armlinux.org.uk>
+Date: Wed, 6 Nov 2019 13:44:21 +0000
+Subject: [PATCH 657/660] arm64: dts: uDPU: fix comphy definitions
+
+The uDPU uses both ethernet controllers, which ties up COMPHY 0 for
+eth1 and COMPHY 1 for eth0, with no USB3 comphy.  The addition of
+COMPHY support made the kernel override the setup by the boot loader
+breaking this platform.  Delete the USB3 COMPHY definition at platform
+level, and add phy specifications for the ethernet channels.
+
+Fixes: bd3d25b07342 ("arm64: dts: marvell: armada-37xx: link USB hosts with their PHYs")
+Signed-off-by: Russell King <rmk+kernel at armlinux.org.uk>
+---
+ arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts b/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts
+index 5b722b4f8323..9d01e39a9eaa 100644
+--- a/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts
++++ b/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts
+@@ -143,6 +143,7 @@
+ 	status = "okay";
+ 	phy-mode = "sgmii";
+ 	managed = "in-band-status";
++	phys = <&comphy1 0>;
+ 	sfp = <&sfp_eth0>;
+ };
+ 
+@@ -150,6 +151,7 @@
+ 	status = "okay";
+ 	phy-mode = "sgmii";
+ 	managed = "in-band-status";
++	phys = <&comphy0 1>;
+ 	sfp = <&sfp_eth1>;
+ };
+ 
+-- 
+2.20.1
+
diff --git a/target/linux/mvebu/patches-4.19/658-arm64-dts-uDPU-remove-i2c-fast-mode.patch b/target/linux/mvebu/patches-4.19/658-arm64-dts-uDPU-remove-i2c-fast-mode.patch
new file mode 100644
index 000000000000..7237e37a9ade
--- /dev/null
+++ b/target/linux/mvebu/patches-4.19/658-arm64-dts-uDPU-remove-i2c-fast-mode.patch
@@ -0,0 +1,35 @@
+From 662eb8fc87f982e63ccb9a9df25c7aeabf9fe341 Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel at armlinux.org.uk>
+Date: Thu, 14 Nov 2019 00:23:35 +0000
+Subject: [PATCH 658/660] arm64: dts: uDPU: remove i2c-fast-mode
+
+The I2C bus violates the timing specifications when run in fast mode
+on the uDPU, so switch to 100kHz mode.
+
+Signed-off-by: Russell King <rmk+kernel at armlinux.org.uk>
+---
+ arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts b/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts
+index 9d01e39a9eaa..296d72689faa 100644
+--- a/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts
++++ b/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts
+@@ -119,12 +119,14 @@
+ 	status = "okay";
+ 	pinctrl-names = "default";
+ 	pinctrl-0 = <&i2c1_pins>;
++	/delete-property/mrvl,i2c-fast-mode;
+ };
+ 
+ &i2c1 {
+ 	status = "okay";
+ 	pinctrl-names = "default";
+ 	pinctrl-0 = <&i2c2_pins>;
++	/delete-property/mrvl,i2c-fast-mode;
+ 
+ 	lm75 at 48 {
+ 		status = "okay";
+-- 
+2.20.1
+
diff --git a/target/linux/mvebu/patches-4.19/659-arm64-dts-uDPU-SFP-cages-support-3W-modules.patch b/target/linux/mvebu/patches-4.19/659-arm64-dts-uDPU-SFP-cages-support-3W-modules.patch
new file mode 100644
index 000000000000..c32b92acabc5
--- /dev/null
+++ b/target/linux/mvebu/patches-4.19/659-arm64-dts-uDPU-SFP-cages-support-3W-modules.patch
@@ -0,0 +1,38 @@
+From 1cb114a20854e34324a2cb308f23054ff8227ffa Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel at armlinux.org.uk>
+Date: Tue, 19 Nov 2019 22:48:50 +0000
+Subject: [PATCH 659/660] arm64: dts: uDPU: SFP cages support 3W modules
+
+The SFP cages are designed to support up to 3W modules, such as G.hn,
+G.fast and MoCA modules. Although there is no way for such modules to
+declare to software that they consume 3W, we document in DT that this
+is the designed power level for these cages.
+
+Signed-off-by: Russell King <rmk+kernel at armlinux.org.uk>
+---
+ arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts b/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts
+index 296d72689faa..275d396df1be 100644
+--- a/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts
++++ b/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts
+@@ -69,6 +69,7 @@
+ 		mod-def0-gpio = <&gpiosb 3 GPIO_ACTIVE_LOW>;
+ 		tx-disable-gpio = <&gpiosb 4 GPIO_ACTIVE_HIGH>;
+ 		tx-fault-gpio = <&gpiosb 5 GPIO_ACTIVE_HIGH>;
++		maximum-power-milliwatt = <3000>;
+ 	};
+ 
+ 	sfp_eth1: sfp-eth1 {
+@@ -78,6 +79,7 @@
+ 		mod-def0-gpio = <&gpiosb 8 GPIO_ACTIVE_LOW>;
+ 		tx-disable-gpio = <&gpiosb 9 GPIO_ACTIVE_HIGH>;
+ 		tx-fault-gpio = <&gpiosb 10 GPIO_ACTIVE_HIGH>;
++		maximum-power-milliwatt = <3000>;
+ 	};
+ };
+ 
+-- 
+2.20.1
+
-- 
2.20.1


_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list