diff mbox

[8/8] arm: orion5x: Configure WNR854T ethernet PHY LEDs

Message ID 1472203264-21089-9-git-send-email-jm@lentin.co.uk (mailing list archive)
State New, archived
Headers show

Commit Message

Jamie Lentin Aug. 26, 2016, 9:21 a.m. UTC
The default PHY configuration disables most of the LEDs. The following
configures the ethernet activity LEDs as Netgear intended.

Signed-off-by: Jamie Lentin <jm@lentin.co.uk>
---
Andrew, note that the slave mdio bus is called "mdio", however there is
an example in bindings/net/dsa/dsa.txt using "mdio-bus". Is this a
mismatch to fix?

That said there's no formal definition of either node, and there's at
least one DT (vf610-zii-dev-rev-b.dts) that uses "mdio" already merged.
---
 arch/arm/boot/dts/orion5x-netgear-wnr854t.dts | 51 +++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

Comments

Andrew Lunn Aug. 26, 2016, 3:05 p.m. UTC | #1
On Fri, Aug 26, 2016 at 10:21:04AM +0100, Jamie Lentin wrote:
> The default PHY configuration disables most of the LEDs. The following
> configures the ethernet activity LEDs as Netgear intended.
> 
> Signed-off-by: Jamie Lentin <jm@lentin.co.uk>
> ---
> Andrew, note that the slave mdio bus is called "mdio", however there is
> an example in bindings/net/dsa/dsa.txt using "mdio-bus". Is this a
> mismatch to fix?

Hi Jamie

Yes, the documentation should match reality.

Unfortunately, there is a bit of a mess here. Different drivers have
different names for this node in device tree. And since device tree is
supposed to be stable, we cannot change them all to be the same.

I did intend to write some documentation defining what best practices
are for mdio busses, but never got around to it.

    Andrew
Andrew Lunn Aug. 26, 2016, 3:05 p.m. UTC | #2
On Fri, Aug 26, 2016 at 10:21:04AM +0100, Jamie Lentin wrote:
> The default PHY configuration disables most of the LEDs. The following
> configures the ethernet activity LEDs as Netgear intended.
> 
> Signed-off-by: Jamie Lentin <jm@lentin.co.uk>

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew
diff mbox

Patch

diff --git a/arch/arm/boot/dts/orion5x-netgear-wnr854t.dts b/arch/arm/boot/dts/orion5x-netgear-wnr854t.dts
index 402a364..2a35a04 100644
--- a/arch/arm/boot/dts/orion5x-netgear-wnr854t.dts
+++ b/arch/arm/boot/dts/orion5x-netgear-wnr854t.dts
@@ -136,31 +136,82 @@ 
 			port@0 {
 				reg = <0>;
 				label = "lan3";
+				phy-handle = <&lan3phy>;
 			};
 
 			port@1 {
 				reg = <1>;
 				label = "lan4";
+				phy-handle = <&lan4phy>;
 			};
 
 			port@2 {
 				reg = <2>;
 				label = "wan";
+				phy-handle = <&wanphy>;
 			};
 
 			port@3 {
 				reg = <3>;
 				label = "cpu";
+				ethernet = <&ethport>;
 			};
 
 			port@5 {
 				reg = <5>;
 				label = "lan1";
+				phy-handle = <&lan1phy>;
 			};
 
 			port@7 {
 				reg = <7>;
 				label = "lan2";
+				phy-handle = <&lan2phy>;
+			};
+		};
+
+		mdio {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			lan3phy: ethernet-phy@0 {
+				/* Marvell 88E1121R (port 1) */
+				compatible = "ethernet-phy-id0141.0cb0",
+					     "ethernet-phy-ieee802.3-c22";
+				reg = <0>;
+				marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>;
+			};
+
+			lan4phy: ethernet-phy@1 {
+				/* Marvell 88E1121R (port 2) */
+				compatible = "ethernet-phy-id0141.0cb0",
+					     "ethernet-phy-ieee802.3-c22";
+				reg = <1>;
+				marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>;
+			};
+
+			wanphy: ethernet-phy@2 {
+				/* Marvell 88E1121R (port 1) */
+				compatible = "ethernet-phy-id0141.0cb0",
+					     "ethernet-phy-ieee802.3-c22";
+				reg = <2>;
+				marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>;
+			};
+
+			lan1phy: ethernet-phy@5 {
+				/* Marvell 88E1112 */
+				compatible = "ethernet-phy-id0141.0cb0",
+					     "ethernet-phy-ieee802.3-c22";
+				reg = <5>;
+				marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>;
+			};
+
+			lan2phy: ethernet-phy@7 {
+				/* Marvell 88E1112 */
+				compatible = "ethernet-phy-id0141.0cb0",
+					     "ethernet-phy-ieee802.3-c22";
+				reg = <7>;
+				marvell,reg-init = <3 16 0 0x1777 3 17 0 0x15>;
 			};
 		};
 	};