1. 19 12月, 2018 2 次提交
  2. 06 12月, 2018 2 次提交
  3. 05 12月, 2018 1 次提交
  4. 04 12月, 2018 4 次提交
  5. 28 11月, 2018 1 次提交
  6. 17 11月, 2018 1 次提交
  7. 12 11月, 2018 4 次提交
  8. 23 10月, 2018 1 次提交
  9. 02 10月, 2018 2 次提交
  10. 27 9月, 2018 3 次提交
    • H
      net: phy: fix WoL handling when suspending the PHY · 93f41e67
      Heiner Kallweit 提交于
      Core of the problem is that phy_suspend() suspends the PHY when it
      should not because of WoL. phy_suspend() checks for WoL already, but
      this works only if the PHY driver handles WoL (what is rarely the case).
      Typically WoL is handled by the MAC driver.
      
      This patch uses new member wol_enabled of struct net_device as
      additional criteria in the check when not to suspend the PHY because
      of WoL.
      
      Last but not least change phy_detach() to call phy_suspend() before
      attached_dev is set to NULL. phy_suspend() accesses attached_dev
      when checking whether the MAC driver activated WoL.
      
      Fixes: f1e911d5 ("r8169: add basic phylib support")
      Fixes: e8cfd9d6 ("net: phy: call state machine synchronously in phy_stop")
      Signed-off-by: NHeiner Kallweit <hkallweit1@gmail.com>
      Reviewed-by: NFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      93f41e67
    • D
      Revert "net: phy: fix WoL handling when suspending the PHY" · d31d1d03
      David S. Miller 提交于
      This reverts commit e0511f6c.
      
      I commited the wrong version of these changes.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d31d1d03
    • H
      net: phy: fix WoL handling when suspending the PHY · e0511f6c
      Heiner Kallweit 提交于
      Actually there's nothing wrong with the two changes marked as "Fixes",
      they just revealed a problem which has been existing before.
      After having switched r8169 to phylib it was reported that WoL from
      shutdown doesn't work any longer (WoL from suspend isn't affected).
      Reason is that during shutdown phy_disconnect()->phy_detach()->
      phy_suspend() is called.
      A similar issue occurs when the phylib state machine calls
      phy_suspend() when handling state PHY_HALTED.
      
      Core of the problem is that phy_suspend() suspends the PHY when it
      should not due to WoL. phy_suspend() checks for WoL already, but this
      works only if the PHY driver handles WoL (what is rarely the case).
      Typically WoL is handled by the MAC driver.
      
      phylib knows about this and handles it in mdio_bus_phy_may_suspend(),
      but that's used only when suspending the system, not in other cases
      like shutdown.
      
      Therefore factor out the relevant check from
      mdio_bus_phy_may_suspend() to a new function phy_may_suspend() and
      use it in phy_suspend().
      
      Last but not least change phy_detach() to call phy_suspend() before
      attached_dev is set to NULL. phy_suspend() accesses attached_dev
      when checking whether the MAC driver activated WoL.
      
      Fixes: f1e911d5 ("r8169: add basic phylib support")
      Fixes: e8cfd9d6 ("net: phy: call state machine synchronously in phy_stop")
      Signed-off-by: NHeiner Kallweit <hkallweit1@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e0511f6c
  11. 26 9月, 2018 1 次提交
  12. 13 9月, 2018 6 次提交
  13. 25 7月, 2018 1 次提交
  14. 05 7月, 2018 1 次提交
  15. 05 6月, 2018 1 次提交
  16. 26 4月, 2018 1 次提交
  17. 22 3月, 2018 1 次提交
  18. 20 3月, 2018 1 次提交
    • G
      net: phy: relax error checking when creating sysfs link netdev->phydev · 4414b3ed
      Grygorii Strashko 提交于
      Some ethernet drivers (like TI CPSW) may connect and manage >1 Net PHYs per
      one netdevice, as result such drivers will produce warning during system
      boot and fail to connect second phy to netdevice when PHYLIB framework
      will try to create sysfs link netdev->phydev for second PHY
      in phy_attach_direct(), because sysfs link with the same name has been
      created already for the first PHY. As result, second CPSW external
      port will became unusable.
      
      Fix it by relaxing error checking when PHYLIB framework is creating sysfs
      link netdev->phydev in phy_attach_direct(), suppressing warning by using
      sysfs_create_link_nowarn() and adding error message instead.
      After this change links (phy->netdev and netdev->phy) creation failure is not
      fatal any more and system can continue working, which fixes TI CPSW issue.
      
      Cc: Florian Fainelli <f.fainelli@gmail.com>
      Cc: Andrew Lunn <andrew@lunn.ch>
      Fixes: a3995460 ("net: phy: Relax error checking on sysfs_create_link()")
      Signed-off-by: NGrygorii Strashko <grygorii.strashko@ti.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4414b3ed
  19. 13 3月, 2018 1 次提交
  20. 28 2月, 2018 1 次提交
  21. 13 2月, 2018 1 次提交
  22. 17 1月, 2018 1 次提交
  23. 09 1月, 2018 1 次提交
  24. 04 1月, 2018 1 次提交