Messages in this thread | | | From | Oleksij Rempel <> | Subject | [PATCH net-next v2 0/8] Make SmartEEE support controllable | Date | Mon, 27 Mar 2023 16:21:54 +0200 |
| |
changes v2: - handle lack of eee_get/set directly by the ethtool framework. This will avoid the need to patch all ethernet controller drivers. - add mac_supports_eee and is_smart_eee_phy flags to indicate support of different levels. - reword commit logs. - add FEC patch to indicated EEE support for some SoCs
Some PHYs, such as the AR8035, provide so-called SmartEEE support, which enables the use of EEE with MACs that lack native EEE capabilities, particularly the LPI support. Since this functionality is usually enabled by default, it may have a negative impact on certain use cases (e.g., PTP) or even prevent the use of all link modes without PHY driver assistance (e.g., a full range of half-duplex modes).
To address at least some of these issues, this patch series aims to pass EEE ethtool access to PHY drivers, enabling them to control SmartEEE support more effectively. The series consists of several patches that improve EEE handling for specific PHYs and MACs, making it possible to enable or disable SmartEEE functionality as needed, depending on the specific use case and requirements. As a result, users will gain more control and flexibility over energy-saving features and compatibility in their networking setups.
Oleksij Rempel (8): net: phy: Add driver-specific get/set_eee support for non-standard PHYs net: phy: add is_smart_eee_phy variable for SmartEEE support net: phy: Add mac_supports_eee variable for EEE support and LPI handling ethtool: eee: Rework get/set handler for SmartEEE-capable PHYs with non-EEE MACs net: phy: at803x: Indicate SmartEEE support for AR8035 and AR8031 PHYs net: phy: at803x: Make SmartEEE support optional and configurable via ethtool net: phy: at803x: Fix SmartEEE support for some link configurations net: fec: Indicate EEE (LPI) support for some FEC Ethernet controllers
drivers/net/ethernet/freescale/fec_main.c | 2 + drivers/net/phy/at803x.c | 158 +++++++++++++++++++++- drivers/net/phy/phy.c | 10 +- include/linux/phy.h | 9 ++ net/ethtool/common.c | 38 ++++++ net/ethtool/common.h | 2 + net/ethtool/eee.c | 17 ++- 7 files changed, 221 insertions(+), 15 deletions(-)
-- 2.30.2
| |