Grygorii Strashko 127c9e970f net: ethernet: ti: cpsw_new: enable bc/mc storm prevention support
This patch enables support for ingress broadcast(BC)/multicast(MC) packets
rate limiting in TI CPSW switchdev driver (the corresponding ALE support
was added in previous patch) by implementing HW offload for simple
tc-flower with policer action with matches on dst_mac:
 - ff:ff:ff:ff:ff:ff/ff:ff:ff:ff:ff:ff has to be used for BC packets rate
limiting (exact match)
 - 01:00:00:00:00:00/01:00:00:00:00:00 fixed value has to be used for MC
packets rate limiting

The CPSW supports MC/BC packets rate limiting in packets/sec and affects
all ingress MC/BC packets and serves as BC/MC storm prevention feature.

Examples:
- BC rate limit to 1000pps:
  tc qdisc add dev eth0 clsact
  tc filter add dev eth0 ingress flower skip_sw dst_mac ff:ff:ff:ff:ff:ff \
  action police pkts_rate 1000 pkts_burst 1 drop

- MC rate limit to 20000pps:
  tc qdisc add dev eth0 clsact
  tc filter add dev eth0 ingress flower skip_sw dst_mac 01:00:00:00:00:00/01:00:00:00:00:00 \
  action police rate pkts_rate 10000 pkts_burst 1 drop

  pkts_burst - not used.

Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2022-04-13 12:42:39 +01:00
..
2022-03-31 13:08:13 -07:00
2022-03-25 13:35:34 -07:00
2022-04-02 11:03:03 -07:00
2022-03-24 19:37:53 -07:00
2022-03-23 18:03:08 -07:00
2022-03-30 16:17:54 -07:00
2022-03-31 13:57:15 -07:00
2022-03-24 18:12:09 -07:00
2022-03-30 10:54:49 -07:00
2022-04-01 10:26:09 -07:00
2022-03-28 14:32:39 -07:00
2022-04-07 06:35:34 -10:00
2022-03-29 08:50:14 -07:00
2022-03-23 18:03:08 -07:00
2022-03-24 16:19:43 -07:00
2022-03-23 18:23:13 -07:00
2022-03-25 13:56:18 -07:00
2022-03-21 18:33:57 -07:00
2022-03-30 10:04:11 -07:00
2022-04-01 16:26:57 -07:00
2022-04-07 06:35:34 -10:00
2022-04-02 10:44:18 -07:00
2022-03-21 14:46:01 -07:00
2022-03-28 12:41:28 -07:00
2022-03-30 10:58:28 -07:00
2022-03-30 10:50:48 -07:00
2022-04-01 09:37:18 -07:00
2022-03-27 22:18:39 +02:00
2022-03-28 14:32:39 -07:00
2022-03-24 13:13:26 -07:00
2022-03-25 13:35:34 -07:00
2022-03-24 19:37:53 -07:00
2022-03-23 18:23:13 -07:00
2022-03-18 19:00:26 +01:00
2022-03-28 14:32:39 -07:00
2022-04-05 10:40:52 -07:00
2022-03-31 13:57:15 -07:00
2022-03-28 12:41:28 -07:00
2022-04-05 10:40:52 -07:00
2022-03-31 14:14:03 -07:00