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>2023-11-28 09:22:44 +0000
commit5236c9c64d6a3df57a5289fc765e46361ee3d3fe (patch)
tree03827dd80988ce6688e044fa571e3291795808bf
parentf20b7fc394909b507d001d16f32e602fd23d2613 (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);