Hi Fabio and Oleksij Den ons. 7. okt. 2020 kl. 11.50 skrev Fabio Estevam <feste...@gmail.com>: > > Hi Oleksij, > > On Tue, Oct 6, 2020 at 5:05 AM Oleksij Rempel <o.rem...@pengutronix.de> wrote: > > > > Hello PHY experts, > > > > Short version: > > what is the proper way to handle the PHY reset before identifying PHY? > > > > Long version: > > I stumbled over following issue: > > If PHY reset is registered within PHY node. Then, sometimes, we will not be > > able to identify it (read PHY ID), because PHY is under reset. > > > > mdio { > > compatible = "virtual,mdio-gpio"; > > > > [...] > > > > /* Microchip KSZ8081 */ > > usbeth_phy: ethernet-phy@3 { > > reg = <0x3>; > > > > interrupts-extended = <&gpio5 12 IRQ_TYPE_LEVEL_LOW>; > > reset-gpios = <&gpio5 11 GPIO_ACTIVE_LOW>; > > reset-assert-us = <500>; > > reset-deassert-us = <1000>; > > }; > > > > [...] > > }; > > > > On simple boards with one PHY per MDIO bus, it is easy to workaround by > > using > > phy-reset-gpios withing MAC node (illustrated in below DT example), instead > > of > > using reset-gpios within PHY node (see above DT example). > > > > &fec { > > [...] > > phy-mode = "rmii"; > > phy-reset-gpios = <&gpio4 12 GPIO_ACTIVE_LOW>; > > [...] > > I thought this has been fixed by Bruno's series: > https://www.spinics.net/lists/netdev/msg673611.html
Yes, that has fixed the Microchip/Micrel PHY ID auto detection issue. I have send a DTS patch v3 that makes use of the newly added device tree parameter: https://lkml.org/lkml/2020/9/23/595 /Bruno