summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>2023-08-17 16:32:32 +0100
committerRussell King (Oracle) <rmk+kernel@armlinux.org.uk>2024-02-27 15:37:55 +0000
commit49782d38a37581816a6e280293468c2b47ab6660 (patch)
treea67a165702e29825f1d862b973ea5f0c03a4e1ef
parent5d038a7e98088496c79d57317d15da9a7907bc4a (diff)
net: dsa: mv88e6xxx: add port_set_eee() method
Add a port_set_eee() method to allow the EEE settings for a port to be configured. Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
-rw-r--r--drivers/net/dsa/mv88e6xxx/chip.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/dsa/mv88e6xxx/chip.h b/drivers/net/dsa/mv88e6xxx/chip.h
index 44383a03ef2f..9dc6052db1d3 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.h
+++ b/drivers/net/dsa/mv88e6xxx/chip.h
@@ -495,6 +495,16 @@ struct mv88e6xxx_ops {
*/
int (*port_set_link)(struct mv88e6xxx_chip *chip, int port, int link);
+#define EEE_FORCE_DISABLE 0
+#define EEE_FORCE_ENABLE 1
+#define EEE_UNFORCED -1
+
+ /* Port's EEE state
+ * Use EEE_FORCE_ENABLE or EEE_FORCE_DISABLE to force EEE to be enabled
+ * or disabled, or EEE_UNFORCED for normal EEE.
+ */
+ int (*port_set_eee)(struct mv88e6xxx_chip *chip, int port, int eee);
+
/* Synchronise the port link state with that of the SERDES
*/
int (*port_sync_link)(struct mv88e6xxx_chip *chip, int port, unsigned int mode, bool isup);