@@ -62,6 +62,28 @@ Optional properties for ports:
MV88E6XXX_PORT_SCHED_STRICT_ALL - All queues use
strict priority, where queues drain in descending
queue number order.
+- egress-limit-mode=<n> : Set port egress rate limiting mode. Valid values are:
+ MV88E6XXX_PORT_EGRESS_COUNT_MODE_FRAMES - Count layer
+ 2 frames (assumed to be 64kb).
+ MV88E6XXX_PORT_EGRESS_COUNT_MODE_L1 - Count all layer
+ 1 bits
+ MV88E6XXX_PORT_EGRESS_COUNT_MODE_L2 - Count all layer
+ 2 bits
+ MV88E6XXX_PORT_EGRESS_COUNT_MODE_L3 - Count all layer
+ 3 bits
+ Must also specify egress-limit-count.
+- egress-limit-count=<n>: Set port egress rate limiting count. If
+ egress-limit-mode is FRAMES, this specifies the
+ maximum number of ethernet frames to allow to egress
+ from this port per second, otherwise it is number of
+ bits as counted based on the mode allowed to egress
+ from this port per second.
+ The HW has limitations which the driver adheres to:
+ between 64 Kbps to 1 Mbps in 16 Kbps increments
+ between 1 Mbps to 100 Mbps in 1Mbps increments
+ between 100 Mbps to 1 Gbps in 10 Mbps increments.
+ Other values will be rounded down the previous
+ increment.
Example:
@@ -9,6 +9,11 @@
#ifndef _DT_BINDINGS_MV88E6XXX_H
#define _DT_BINDINGS_MV88E6XXX_H
+#define MV88E6XXX_PORT_EGRESS_COUNT_MODE_FRAMES 0
+#define MV88E6XXX_PORT_EGRESS_COUNT_MODE_L1 1
+#define MV88E6XXX_PORT_EGRESS_COUNT_MODE_L2 2
+#define MV88E6XXX_PORT_EGRESS_COUNT_MODE_L3 3
+
#define MV88E6XXX_PORT_SCHED_ROUND_ROBIN 0
#define MV88E6XXX_PORT_SCHED_STRICT_3 1
#define MV88E6XXX_PORT_SCHED_STRICT_3_2 2
Document port egress rate limiting settings. Add defines for specifying egress rate limiting mode. Signed-off-by: Robert Beckett <bob.beckett@collabora.com> --- .../devicetree/bindings/net/dsa/marvell.txt | 22 +++++++++++++++++++ include/dt-bindings/net/dsa-mv88e6xxx.h | 5 +++++ 2 files changed, 27 insertions(+)