Messages in this thread | | | From | Oleksij Rempel <> | Subject | [PATCH net-next v3 00/15] net: add EEE support for KSZ9477 and AR8035 with i.MX6 | Date | Mon, 30 Jan 2023 09:06:59 +0100 |
| |
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 (15): 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: 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
drivers/net/dsa/microchip/ksz_common.c | 66 ++++++ drivers/net/ethernet/freescale/fec_main.c | 22 +- drivers/net/phy/at803x.c | 142 +++++++++++- drivers/net/phy/micrel.c | 21 ++ drivers/net/phy/phy-c45.c | 255 +++++++++++++++++++++- drivers/net/phy/phy.c | 66 +----- drivers/net/phy/phy_device.c | 26 ++- include/linux/mdio.h | 53 +++++ include/linux/phy.h | 26 +++ include/uapi/linux/mdio.h | 8 + 10 files changed, 615 insertions(+), 70 deletions(-)
-- 2.30.2
| |