ARM: Kirkwood: Fix DT based DSA.
PATCH 1/1 ARM: Kirkwood: Fix DT based DSA.
During the conversion of boards to use DT to instantiate Distributed Switch Architecture, nobody volunteered to test. As to be expected, the conversion was flawed. Testers and access to hardware has now become available, and this patch hopefully fixes the problems.
dsa,mii-bus must be a phandle to the top level mdio node, not the port specific subnode of the mdio device.
dsa,ethernet must be a phandle to the port subnode within the ethernet DT node, not the ethernet node.
---
NOTE: This is a request for testing. Please do not commit unless it gains a Tested-by: There is a user out there of one of these boards, so hopefully it will get tested.
arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts | 16 ++++++---------- arch/arm/boot/dts/kirkwood-rd88f6281.dtsi | 13 ++++--------- arch/arm/boot/dts/kirkwood.dtsi | 4 ++-- 3 files changed, 12 insertions(+), 21 deletions(-)
arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts +6 -10
@@ -123,11 +123,11 @@ dsa at 0 { compatible = "marvell,dsa"; - #address-cells = <2>; + #address-cells = <1>; #size-cells = <0>; - dsa,ethernet = <ð0>; - dsa,mii-bus = <ðphy0>; + dsa,ethernet = <ð0port>; + dsa,mii-bus = <&mdio>; switch at 0 { #address-cells = <1>;
@@ -169,17 +169,13 @@ &mdio { status = "okay"; - - ethphy0: ethernet-phy at ff { - reg = <0xff>; /* No phy attached */ - speed = <1000>; - duplex = <1>; - }; }; ð0 { status = "okay"; + ethernet0-port at 0 { - phy-handle = <ðphy0>; + speed = <1000>; + duplex = <1>; }; };
arch/arm/boot/dts/kirkwood-rd88f6281.dtsi +4 -9
@@ -69,8 +69,8 @@ #address-cells = <2>; #size-cells = <0>; - dsa,ethernet = <ð0>; - dsa,mii-bus = <ðphy1>; + dsa,ethernet = <ð0port>; + dsa,mii-bus = <&mdio>; switch at 0 { #address-cells = <1>;
@@ -130,12 +130,6 @@ ethphy0: ethernet-phy at 0 { reg = <0>; }; - - ethphy1: ethernet-phy at ff { - reg = <0xff>; /* No PHY attached */ - speed = <1000>; - duple = <1>; - }; }; ð0 {
@@ -148,6 +142,7 @@ ð1 { status = "okay"; ethernet1-port at 0 { - phy-handle = <ðphy1>; + speed = <1000>; + duple = <1>; }; };
arch/arm/boot/dts/kirkwood.dtsi +2 -2
@@ -309,7 +309,7 @@ marvell,tx-checksum-limit = <1600>; status = "disabled"; - ethernet0-port at 0 { + eth0port: ethernet0-port at 0 { compatible = "marvell,kirkwood-eth-port"; reg = <0>; interrupts = <11>;
@@ -342,7 +342,7 @@ pinctrl-names = "default"; status = "disabled"; - ethernet1-port at 0 { + eth1port: ethernet1-port at 0 { compatible = "marvell,kirkwood-eth-port"; reg = <0>; interrupts = <15>;
Signature · 1 line
2.1.0
PATCH 1/1 ARM: Kirkwood: Fix DT based DSA.
Quoted 5 lines · Andrew Lunn
During the conversion of boards to use DT to instantiate Distributed Switch Architecture, nobody volunteered to test. As to be expected, the conversion was flawed. Testers and access to hardware has now become available, and this patch hopefully fixes the problems.
Quoted 8 lines
dsa,mii-bus must be a phandle to the top level mdio node, not the port specific subnode of the mdio device.
dsa,ethernet must be a phandle to the port subnode within the ethernet DT node, not the ethernet node.
Fixes e2eaa339af441b3d51cdaa16870065c4154ce13cFixes e7c8f3808be854379c9784745663a55371cbf232
Your changes look good with respect to how the binding is defined.
Quoted 3 lines
Signed-off-by Andrew Lunn <[email protected]>---
[snip]
arch/arm/boot/dts/kirkwood-rd88f6281.dtsi line 146
Quoted 8 lines
ð0 {arch/arm/boot/dts/kirkwood-rd88f6281.dtsi +2
-1@@ -148,6 +142,7 @@ ð1 { status = "okay"; ethernet1-port at 0 { - phy-handle = <ðphy1>; + speed = <1000>; + duple = <1>;
Typo here: should be "duplex".
Quoted 25 lines
(quoted diff) +0
-0}; };arch/arm/boot/dts/kirkwood.dtsi +2
-2@@ -309,7 +309,7 @@ marvell,tx-checksum-limit = <1600>; status = "disabled"; - ethernet0-port at 0 { + eth0port: ethernet0-port at 0 { compatible = "marvell,kirkwood-eth-port"; reg = <0>; interrupts = <11>;@@ -342,7 +342,7 @@ pinctrl-names = "default"; status = "disabled"; - ethernet1-port at 0 { + eth1port: ethernet1-port at 0 { compatible = "marvell,kirkwood-eth-port"; reg = <0>; interrupts = <15>;