Messages in this thread | | | From | Oleksij Rempel <> | Subject | [PATCH net-next v5 00/23] net: add EEE support for KSZ9477 and AR8035 with i.MX6 | Date | Mon, 6 Feb 2023 14:50:27 +0100 |
| |
changes v5: - spell fixes - move part of genphy_c45_read_eee_abilities() to genphy_c45_read_eee_cap1() - validate MDIO_PCS_EEE_ABLE register against 0xffff val. - rename *eee_100_10000* to *eee_cap1* - use linkmode_intersects(phydev->supported, PHY_EEE_CAP1_FEATURES) instead of !linkmode_empty() - add documentation to linkmode/register helpers
changes v4: - remove following helpers: mmd_eee_cap_to_ethtool_sup_t mmd_eee_adv_to_ethtool_adv_t ethtool_adv_to_mmd_eee_adv_t and port drivers from this helpers to linkmode helpers. - rebase against latest net-next - port phy_init_eee() to genphy_c45_eee_is_active()
changes v3: - rework some parts of EEE infrastructure and move it to c45 code. - add supported_eee storage and start using it in EEE code and by the micrel driver. - add EEE support for ar8035 PHY - add SmartEEE support to FEC i.MX series.
changes v2: - use phydev->supported instead of reading MII_BMSR regiaster - fix @get_eee > @set_eee
With this patch series we provide EEE control for KSZ9477 family of switches and AR8035 with i.MX6 configuration. According to my tests, on a system with KSZ8563 switch and 100Mbit idle link, we consume 0,192W less power per port if EEE is enabled.
Oleksij Rempel (23): net: dsa: microchip: enable EEE support net: phy: add genphy_c45_read_eee_abilities() function net: phy: micrel: add ksz9477_get_features() net: phy: export phy_check_valid() function net: phy: add genphy_c45_ethtool_get/set_eee() support net: phy: c22: migrate to genphy_c45_write_eee_adv() net: phy: c45: migrate to genphy_c45_write_eee_adv() net: phy: migrate phy_init_eee() to genphy_c45_eee_is_active() net: phy: start using genphy_c45_ethtool_get/set_eee() net: phy: add driver specific get/set_eee support net: phy: at803x: implement ethtool access to SmartEEE functionality net: phy: at803x: ar8035: fix EEE support for half duplex links net: phy: add PHY specifica flag to signal SmartEEE support net: phy: at803x: add PHY_SMART_EEE flag to AR8035 net: phy: add phy_has_smarteee() helper net: fec: add support for PHYs with SmartEEE support e1000e: replace EEE ethtool helpers to linkmode variants igb: replace EEE ethtool helpers to linkmode variants igc: replace EEE ethtool helpers to linkmode variants tg3: replace EEE ethtool helpers to linkmode variants r8152: replace EEE ethtool helpers to linkmode variants net: usb: ax88179_178a: replace EEE ethtool helpers to linkmode variants net: mdio: drop EEE ethtool helpers in favor to linkmode variants
drivers/net/dsa/microchip/ksz_common.c | 65 ++++ drivers/net/ethernet/broadcom/tg3.c | 9 +- drivers/net/ethernet/freescale/fec_main.c | 22 +- drivers/net/ethernet/intel/e1000e/ethtool.c | 16 +- drivers/net/ethernet/intel/igb/igb_ethtool.c | 23 +- drivers/net/ethernet/intel/igc/igc_ethtool.c | 12 +- drivers/net/phy/at803x.c | 142 ++++++++- drivers/net/phy/micrel.c | 21 ++ drivers/net/phy/phy-c45.c | 316 ++++++++++++++++++- drivers/net/phy/phy.c | 155 ++------- drivers/net/phy/phy_device.c | 26 +- drivers/net/usb/ax88179_178a.c | 24 +- drivers/net/usb/r8152.c | 34 +- include/linux/mdio.h | 167 +++++----- include/linux/phy.h | 28 ++ include/uapi/linux/mdio.h | 8 + 16 files changed, 808 insertions(+), 260 deletions(-)
-- 2.30.2
| |