Hi Linus, On Tue, Jan 5, 2021 at 12:35 PM Linus Walleij <linus.walleij@xxxxxxxxxx> wrote: > So should the ethernet PHY not just have some reset-gpios > that it obtain and de-assert as part of probing? > > For example drivers/net/phy/mdio_bus.c has this: > > /* de-assert bus level PHY GPIO reset */ > gpiod = devm_gpiod_get_optional(&bus->dev, "reset", GPIOD_OUT_LOW); > > Other drivers can do the same. > > Deferred probe should ascertain that this GPIO driver gets > loaded before the ethernet phy driver. Thanks for your review. I investigated this further and it seems to me that the issue is in drivers/net/phy/mdio_bus.c, so I am adding some netdev folks. The driver drivers/net/phy/mdio_bus.c and the yaml description says that it only supports one bus level PHY GPIO reset via reset-gpios property. On the imx6ul-evk, there are two KSZ8081 PHYs in the same mdio bus, so this is how I described it in dts: https://pastebin.com/raw/xLjYUHdN but the 'reset-gpios' properties are not found in this case. I think we need to let drivers/net/phy/mdio_bus.c to search for 'reset-gpios' also inside the mdio children. My understanding is that adding phy-reset-gpios under each fec node is deprecated. Any suggestions? Thanks, Fabio Estevam