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 <li...@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+ker...@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+ker...@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+ker...@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+ker...@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@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+ker...@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+ker...@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@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel