1. 24 10月, 2019 1 次提交
  2. 05 10月, 2019 2 次提交
  3. 28 8月, 2019 1 次提交
    • M
      Add genphy_c45_config_aneg() function to phy-c45.c · 94acaeb5
      Marco Hartmann 提交于
      Commit 34786005 ("net: phy: prevent PHYs w/o Clause 22 regs from calling
      genphy_config_aneg") introduced a check that aborts phy_config_aneg()
      if the phy is a C45 phy.
      This causes phy_state_machine() to call phy_error() so that the phy
      ends up in PHY_HALTED state.
      
      Instead of returning -EOPNOTSUPP, call genphy_c45_config_aneg()
      (analogous to the C22 case) so that the state machine can run
      correctly.
      
      genphy_c45_config_aneg() closely resembles mv3310_config_aneg()
      in drivers/net/phy/marvell10g.c, excluding vendor specific
      configurations for 1000BaseT.
      
      Fixes: 22b56e82 ("net: phy: replace genphy_10g_driver with genphy_c45_driver")
      Signed-off-by: NMarco Hartmann <marco.hartmann@nxp.com>
      Reviewed-by: NAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      94acaeb5
  4. 18 8月, 2019 1 次提交
  5. 14 8月, 2019 2 次提交
  6. 12 8月, 2019 2 次提交
  7. 13 7月, 2019 1 次提交
  8. 09 7月, 2019 1 次提交
  9. 06 6月, 2019 1 次提交
  10. 31 5月, 2019 4 次提交
  11. 25 5月, 2019 1 次提交
  12. 04 5月, 2019 2 次提交
    • H
      net: phy: improve resuming from hibernation · f24098f8
      Heiner Kallweit 提交于
      I got an interesting report [0] that after resuming from hibernation
      the link has 100Mbps instead of 1Gbps. Reason is that another OS has
      been used whilst Linux was hibernated. And this OS speeds down the link
      due to WoL. Therefore, when resuming, we shouldn't expect that what
      the PHY advertises is what it did when hibernating.
      Easiest way to do this is removing state PHY_RESUMING. Instead always
      go via PHY_UP that configures PHY advertisement.
      
      [0] https://bugzilla.kernel.org/show_bug.cgi?id=202851Signed-off-by: NHeiner Kallweit <hkallweit1@gmail.com>
      Reviewed-by: NAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f24098f8
    • H
      net: phy: improve pause handling · 22c0ef6b
      Heiner Kallweit 提交于
      When probing the phy device we set sym and asym pause in the "supported"
      bitmap (unless the PHY tells us otherwise). However we don't know yet
      whether the MAC supports pause. Simply copying phy->supported to
      phy->advertising will trigger advertising pause, and that's not
      what we want. Therefore add phy_advertise_supported() that copies all
      modes but doesn't touch the pause bits.
      
      In phy_support_(a)sym_pause we shouldn't set any bits in the supported
      bitmap because we may set a bit the PHY intentionally disabled.
      Effective pause support should be the AND-combined PHY and MAC pause
      capabilities. If the MAC supports everything, then it's only relevant
      what the PHY supports. If MAC supports sym pause only, then we have to
      clear the asym bit in phydev->supported.
      Copy the pause flags only and don't touch the modes, because a driver
      may have intentionally removed a mode from phydev->advertising.
      Signed-off-by: NHeiner Kallweit <hkallweit1@gmail.com>
      Reviewed-by: NAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      22c0ef6b
  13. 09 4月, 2019 1 次提交
  14. 04 4月, 2019 1 次提交
  15. 03 4月, 2019 1 次提交
  16. 04 3月, 2019 4 次提交
  17. 24 2月, 2019 2 次提交
  18. 22 2月, 2019 2 次提交
  19. 18 2月, 2019 1 次提交
  20. 15 2月, 2019 1 次提交
  21. 14 2月, 2019 3 次提交
  22. 11 2月, 2019 1 次提交
  23. 10 2月, 2019 1 次提交
    • A
      net: phy: Add support for asking the PHY its abilities · efbdfdc2
      Andrew Lunn 提交于
      Add support for runtime determination of what the PHY supports, by
      adding a new function to the phy driver. The get_features call should
      set the phydev->supported member with the features the PHY supports.
      It is only called if phydrv->features is NULL.
      
      This requires minor changes to pause. The PHY driver should not set
      pause abilities, except for when it has odd cause capabilities, e.g.
      pause cannot be disabled. With this change, phydev->supported already
      contains the drivers abilities, including pause. So rather than
      considering phydrv->features, look at the phydev->supported, and
      enable pause if neither of the pause bits are already set.
      Signed-off-by: NAndrew Lunn <andrew@lunn.ch>
      [hkallweit1@gmail.com: fixed small checkpatch complaint in one comment]
      Signed-off-by: NHeiner Kallweit <hkallweit1@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      efbdfdc2
  24. 08 2月, 2019 1 次提交
    • H
      net: phy: let genphy_c45_read_link manage the devices to check · 998a8a83
      Heiner Kallweit 提交于
      Let genphy_c45_read_link manage the devices to check, this removes
      overhead from callers. Add C22EXT to the list of excluded devices
      because it doesn't implement the status register. According to the
      802.3 clause 45 spec registers 29.0 - 29.4 are reserved.
      
      At the moment we have very few clause 45 PHY drivers, so we are
      lacking experience whether other drivers will have to exclude further
      devices, or may need to check PHY XS. If we should figure out that
      list of devices to check needs to be configurable, I think best will
      be to add a device list member to struct phy_driver.
      
      v2:
      - adjusted commit message
      - exclude also device C22EXT from link checking
      Signed-off-by: NHeiner Kallweit <hkallweit1@gmail.com>
      Reviewed-by: NAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      998a8a83
  25. 07 2月, 2019 1 次提交
  26. 25 1月, 2019 1 次提交