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

From: Guenter Roeck
Date: Tue Oct 26 2021 - 12:49:52 EST


Hi,

while bisecting I noticed the following.

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 <sean.anderson@xxxxxxxx>
> ---
>
> 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
>