[net-next PATCH 1/2] dt-bindings: net: macb: Add mdio bus child node

Subsystems: networking drivers, open firmware and flattened device tree bindings, the rest

STALE1756d

7 messages, 4 authors, 2021-10-26 · open the first message on its own page

[net-next PATCH 1/2] dt-bindings: net: macb: Add mdio bus child node

From: Sean Anderson <hidden>
Date: 2021-10-22 16:36:08

This adds an optional mdio bus child node. If present, the mac will
look for PHYs there instead of directly under the top-level node. This
eliminates any ambiguity about whether child nodes are PHYs, and allows
the MDIO bus to contain non-PHY devices.

Signed-off-by: Sean Anderson <redacted>
---

 Documentation/devicetree/bindings/net/macb.txt | 4 ++++
 1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/net/macb.txt b/Documentation/devicetree/bindings/net/macb.txt
index af9df2f01a1c..a1b06fd1962e 100644
--- a/Documentation/devicetree/bindings/net/macb.txt
+++ b/Documentation/devicetree/bindings/net/macb.txt
@@ -30,6 +30,10 @@ Required properties:
 	Optional elements: 'tsu_clk'
 - clocks: Phandles to input clocks.
 
+Optional properties:
+- mdio: node containing PHY children. If this node is not present, then PHYs
+        will be direct children.
+
 The MAC address will be determined using the optional properties
 defined in ethernet.txt.
 
-- 
2.25.1

[net-next PATCH 2/2] net: macb: Use mdio child node for MDIO bus if it exists

From: Sean Anderson <hidden>
Date: 2021-10-22 16:36:15

This allows explicitly specifying which children are present on the mdio
bus. Additionally, it allows for non-phy MDIO devices on the bus.

Signed-off-by: Sean Anderson <redacted>
---

 drivers/net/ethernet/cadence/macb_main.c | 11 +++++++++++
 1 file changed, 11 insertions(+)
diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c
index 029dea2873e3..30a65cac9e87 100644
--- a/drivers/net/ethernet/cadence/macb_main.c
+++ b/drivers/net/ethernet/cadence/macb_main.c
@@ -898,6 +898,17 @@ static int macb_mdiobus_register(struct macb *bp)
 {
 	struct device_node *child, *np = bp->pdev->dev.of_node;
 
+	/* If we have a child named mdio, probe it instead of looking for PHYs
+	 * directly under the MAC node
+	 */
+	child = of_get_child_by_name(np, "mdio");
+	if (np) {
+		int ret = of_mdiobus_register(bp->mii_bus, child);
+
+		of_node_put(child);
+		return ret;
+	}
+
 	if (of_phy_is_fixed_link(np))
 		return mdiobus_register(bp->mii_bus);
 
-- 
2.25.1

Re: [net-next PATCH 1/2] dt-bindings: net: macb: Add mdio bus child node

From: Andrew Lunn <andrew@lunn.ch>
Date: 2021-10-22 19:38:02

On Fri, Oct 22, 2021 at 12:35:47PM -0400, Sean Anderson wrote:
This adds an optional mdio bus child node. If present, the mac will
look for PHYs there instead of directly under the top-level node. This
eliminates any ambiguity about whether child nodes are PHYs, and allows
the MDIO bus to contain non-PHY devices.

Signed-off-by: Sean Anderson <redacted>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew

Re: [net-next PATCH 1/2] dt-bindings: net: macb: Add mdio bus child node

From: Andrew Lunn <andrew@lunn.ch>
Date: 2021-10-22 19:39:27

On Fri, Oct 22, 2021 at 12:35:47PM -0400, Sean Anderson wrote:
This adds an optional mdio bus child node. If present, the mac will
look for PHYs there instead of directly under the top-level node. This
eliminates any ambiguity about whether child nodes are PHYs, and allows
the MDIO bus to contain non-PHY devices.
Hi Sean

Please always have a patch 0/X for patchsets, which explains the big
picture of the patchset. This is also used as the merge commit
message.

	Andrew

Re: [net-next PATCH 2/2] net: macb: Use mdio child node for MDIO bus if it exists

From: Andrew Lunn <andrew@lunn.ch>
Date: 2021-10-22 19:43:46

On Fri, Oct 22, 2021 at 12:35:48PM -0400, Sean Anderson wrote:
This allows explicitly specifying which children are present on the mdio
bus. Additionally, it allows for non-phy MDIO devices on the bus.

Signed-off-by: Sean Anderson <redacted>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew

Re: [net-next PATCH 1/2] dt-bindings: net: macb: Add mdio bus child node

From: patchwork-bot+netdevbpf@kernel.org
Date: 2021-10-24 12:50:47

Hello:

This series was applied to netdev/net-next.git (master)
by David S. Miller [off-list ref]:

On Fri, 22 Oct 2021 12:35:47 -0400 you wrote:
This adds an optional mdio bus child node. If present, the mac will
look for PHYs there instead of directly under the top-level node. This
eliminates any ambiguity about whether child nodes are PHYs, and allows
the MDIO bus to contain non-PHY devices.

Signed-off-by: Sean Anderson <redacted>

[...]
Here is the summary with links:
  - [net-next,1/2] dt-bindings: net: macb: Add mdio bus child node
    https://git.kernel.org/netdev/net-next/c/25790844006a
  - [net-next,2/2] net: macb: Use mdio child node for MDIO bus if it exists
    https://git.kernel.org/netdev/net-next/c/4d98bb0d7ec2

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html

Re: [net-next PATCH 2/2] net: macb: Use mdio child node for MDIO bus if it exists

From: Guenter Roeck <linux@roeck-us.net>
Date: 2021-10-26 16:49:52

Hi,

while bisecting I noticed the following.

On Fri, Oct 22, 2021 at 12:35:48PM -0400, Sean Anderson wrote:
quoted hunk
This allows explicitly specifying which children are present on the mdio
bus. Additionally, it allows for non-phy MDIO devices on the bus.

Signed-off-by: Sean Anderson <redacted>
---

 drivers/net/ethernet/cadence/macb_main.c | 11 +++++++++++
 1 file changed, 11 insertions(+)
diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c
index 029dea2873e3..30a65cac9e87 100644
--- a/drivers/net/ethernet/cadence/macb_main.c
+++ b/drivers/net/ethernet/cadence/macb_main.c
@@ -898,6 +898,17 @@ static int macb_mdiobus_register(struct macb *bp)
 {
 	struct device_node *child, *np = bp->pdev->dev.of_node;
 
+	/* If we have a child named mdio, probe it instead of looking for PHYs
+	 * directly under the MAC node
+	 */
+	child = of_get_child_by_name(np, "mdio");
+	if (np) {
s/np/child/ 

to avoid network interface failures with messages like

[   12.764530] macb 10090000.ethernet eth0: Could not attach PHY (-19)

I'll send a patch in a minute to fix this up, after bisect is complete
and after testing, to make sure that there is no additional problem.

Guenter
+		int ret = of_mdiobus_register(bp->mii_bus, child);
+
+		of_node_put(child);
+		return ret;
+	}
+
 	if (of_phy_is_fixed_link(np))
 		return mdiobus_register(bp->mii_bus);
 
-- 
2.25.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help