mvebu: add uDPU update patches
authorRussell King <linux@armlinux.org.uk>
Wed, 27 Nov 2019 11:45:35 +0000 (11:45 +0000)
committerJonas Gorski <jonas.gorski@gmail.com>
Tue, 21 Jan 2020 21:32:48 +0000 (22:32 +0100)
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@armlinux.org.uk>
[jonas.gorski: rename to mvebu, refresh patches]
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
target/linux/mvebu/patches-4.19/544-arm64-dts-uDPU-fix-comphy-definitions.patch [new file with mode: 0644]
target/linux/mvebu/patches-4.19/545-arm64-dts-uDPU-remove-i2c-fast-mode.patch [new file with mode: 0644]
target/linux/mvebu/patches-4.19/546-arm64-dts-uDPU-SFP-cages-support-3W-modules.patch [new file with mode: 0644]

diff --git a/target/linux/mvebu/patches-4.19/544-arm64-dts-uDPU-fix-comphy-definitions.patch b/target/linux/mvebu/patches-4.19/544-arm64-dts-uDPU-fix-comphy-definitions.patch
new file mode 100644 (file)
index 0000000..f72ea93
--- /dev/null
@@ -0,0 +1,35 @@
+From 9c222a1d78a1700220e38feb270f00d2ddd3c5ab Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel@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@armlinux.org.uk>
+---
+ arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- 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>;
+ };
diff --git a/target/linux/mvebu/patches-4.19/545-arm64-dts-uDPU-remove-i2c-fast-mode.patch b/target/linux/mvebu/patches-4.19/545-arm64-dts-uDPU-remove-i2c-fast-mode.patch
new file mode 100644 (file)
index 0000000..b984eb4
--- /dev/null
@@ -0,0 +1,30 @@
+From 662eb8fc87f982e63ccb9a9df25c7aeabf9fe341 Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel@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@armlinux.org.uk>
+---
+ arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- 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@48 {
+               status = "okay";
diff --git a/target/linux/mvebu/patches-4.19/546-arm64-dts-uDPU-SFP-cages-support-3W-modules.patch b/target/linux/mvebu/patches-4.19/546-arm64-dts-uDPU-SFP-cages-support-3W-modules.patch
new file mode 100644 (file)
index 0000000..d025f36
--- /dev/null
@@ -0,0 +1,33 @@
+From 1cb114a20854e34324a2cb308f23054ff8227ffa Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel@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@armlinux.org.uk>
+---
+ arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- 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>;
+       };
+ };