On 03/14/2018 01:10 PM, Heiner Kallweit wrote: > This patch series aims to tackle few issues with phylib: > > - address issues with patch series [1] (smsc911x + phylib changes) > - make phy_stop synchronous > - get rid of phy_start/stop_machine and handle it in phy_start/phy_stop > - in mdio_suspend consider runtime pm state of mdio bus parent > - consider more WOL conditions when deciding whether PHY is allowed to > suspend > - only resume phy after system suspend if needed > > [1] https://www.mail-archive.com/netdev@vger.kernel.org/msg196061.html > > It works fine here but other NIC drivers may use phylib differently. > Therefore I'd appreciate feedback and more testing. > > I could think of some subsequent patches, e.g. phy_error() could be > reduced to calling phy_stop() and printing an error message > (today it silently sets the PHY state to PHY_HALTED).
Thanks for the patch series, I will give it a spin on a number of devices using different PHYLIB integration and see if something breaks. > > Heiner Kallweit (7): > net: phy: unconditionally resume and re-enable interrupts in phy_start > net: phy: improve checking for when PHY is allowed to suspend > net: phy: resume PHY only if needed in mdio_bus_phy_suspend > net: phy: remove phy_start_machine > net: phy: make phy_stop synchronous > net: phy: use new function phy_stop_suspending in mdio_bus_phy_suspend > net: phy: remove phy_stop_machine > > drivers/net/phy/phy.c | 102 > +++++++++++++++++-------------------------- > drivers/net/phy/phy_device.c | 80 ++++++++++++++++++++------------- > drivers/net/phy/phylink.c | 1 - > include/linux/phy.h | 14 ++++-- > 4 files changed, 100 insertions(+), 97 deletions(-) > -- Florian