Commit 4d98bb0d authored by Sean Anderson's avatar Sean Anderson Committed by David S. Miller
Browse files

net: macb: Use mdio child node for MDIO bus if it exists



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: default avatarSean Anderson <sean.anderson@seco.com>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 25790844
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -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);