phy_connect_dev calling phy_reset???
Tim Harvey
tharvey at gateworks.com
Mon Feb 28 21:01:21 CET 2022
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
More information about the U-Boot
mailing list