Greetings, I'm wondering if it is proper in U-Boot for phy_connect_dev() to always call phy_reset() which generates a soft reset via BMCR_RESET.
For some (or most?) PHY's this resets specific PHY config such as RGMII delays and LED configuration that may have been configured by firmware running prior to U-Boot (SPL/TPL). I believe there was some discussion and thrash about this in the Linux kernel in the past and while I can't find the discussion or patches I see that for the current kernel BMCR_RESET is in genphy_soft_reset which() is not called in the generic phy_connect() but instead only called by a handful of phy drivers which I would expect is ok as those phy drivers would also be re-configuring the PHY. Specifically I have an issue with this with a board that has custom firmware code that runs prior to U-Boot and the BMCR reset is undoing specific PHY config that I've done in this firmware causing me to look at implementing PHY drivers in U-Boot that otherwise would not be needed. Best Regards, Tim