[PATCH net-next v2 3/8] net: phy: Add mac_supports_eee variable for EEE support and LPI handling

From: Oleksij Rempel
Date: Mon Mar 27 2023 - 10:24:12 EST


This commit introduces a new variable, mac_supports_eee, to the PHY
layer. This variable is used to indicate if a MAC provides EEE support
or is responsible for Low Power Idle (LPI) handling. The
mac_supports_eee variable should be used in conjunction with
is_smart_eee_phy to make proper configuration decisions based on the
capabilities of both the PHY and MAC.

By adding the mac_supports_eee variable, PHY drivers and the PHYlib
framework can better coordinate EEE and LPI management between the PHY
and MAC.

Signed-off-by: Oleksij Rempel <o.rempel@xxxxxxxxxxxxxx>
---
include/linux/phy.h | 2 ++
1 file changed, 2 insertions(+)

diff --git a/include/linux/phy.h b/include/linux/phy.h
index 6622b59ab5a1..573ad3fc2bf7 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -548,6 +548,7 @@ struct macsec_ops;
* @is_on_sfp_module: Set true if PHY is located on an SFP module.
* @mac_managed_pm: Set true if MAC driver takes of suspending/resuming PHY
* @is_smart_eee_phy: Set true if PHY is a Smart EEE PHY
+ * @mac_supports_eee: Set true if MAC supports EEE
* @state: State of the PHY for management purposes
* @dev_flags: Device-specific flags used by the PHY driver.
*
@@ -644,6 +645,7 @@ struct phy_device {
unsigned is_on_sfp_module:1;
unsigned mac_managed_pm:1;
unsigned is_smart_eee_phy:1;
+ unsigned mac_supports_eee:1;

unsigned autoneg:1;
/* The most recently read link state */
--
2.30.2