++ Katsuhiro From: Jose Abreu <joab...@synopsys.com>
> Some DT bindings do not have the PHY handle. Let's fallback to manually > discovery in case phylink_of_phy_connect() fails. > > Reported-by: Katsuhiro Suzuki <katsuh...@katsuster.net> > Fixes: 74371272f97f ("net: stmmac: Convert to phylink and remove phylib > logic") > Signed-off-by: Jose Abreu <joab...@synopsys.com> > Cc: Joao Pinto <jpi...@synopsys.com> > Cc: David S. Miller <da...@davemloft.net> > Cc: Giuseppe Cavallaro <peppe.cavall...@st.com> > Cc: Alexandre Torgue <alexandre.tor...@st.com> > --- > Hello Katsuhiro, > > Can you please test this patch ? > --- > drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c > b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c > index a48751989fa6..f4593d2d9d20 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c > @@ -950,9 +950,12 @@ static int stmmac_init_phy(struct net_device *dev) > > node = priv->plat->phylink_node; > > - if (node) { > + if (node) > ret = phylink_of_phy_connect(priv->phylink, node, 0); > - } else { > + > + /* Some DT bindings do not set-up the PHY handle. Let's try to > + * manually parse it */ > + if (!node || ret) { > int addr = priv->plat->phy_addr; > struct phy_device *phydev; > > -- > 2.7.4