Messages in this thread | | | From | Bruno Thomsen <> | Date | Fri, 9 Oct 2020 16:25:49 +0200 | Subject | Re: PHY reset question |
| |
Hi Fabio and Oleksij
Den ons. 7. okt. 2020 kl. 11.50 skrev Fabio Estevam <festevam@gmail.com>: > > Hi Oleksij, > > On Tue, Oct 6, 2020 at 5:05 AM Oleksij Rempel <o.rempel@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
| |