aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/hack-5.10/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/generic/hack-5.10/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch')
-rw-r--r--target/linux/generic/hack-5.10/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/target/linux/generic/hack-5.10/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch b/target/linux/generic/hack-5.10/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch
index e69113d3c1..4fc6e355cb 100644
--- a/target/linux/generic/hack-5.10/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch
+++ b/target/linux/generic/hack-5.10/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch
@@ -1,3 +1,32 @@
+From: DENG Qingfang <dqfext@gmail.com>
+Subject: DSA: roaming fix for Marvell mv88e6xxx
+
+Marvell mv88e6xxx switch series cannot perform MAC learning from
+CPU-injected (FROM_CPU) DSA frames, which results in 2 issues.
+- excessive flooding, due to the fact that DSA treats those addresses
+as unknown
+- the risk of stale routes, which can lead to temporary packet loss
+
+Backport those patch series from netdev mailing list, which solve these
+issues by adding and clearing static entries to the switch's FDB.
+
+Add a hack patch to set default VID to 1 in port_fdb_{add,del}. Otherwise
+the static entries will be added to the switch's private FDB if VLAN
+filtering disabled, which will not work.
+
+The switch may generate an "ATU violation" warning when a client moves
+from the CPU port to a switch port because the static ATU entry added by
+DSA core still points to the CPU port. DSA core will then clear the static
+entry so it is not fatal. Disable the warning so it will not confuse users.
+
+Link: https://lore.kernel.org/netdev/20210106095136.224739-1-olteanv@gmail.com/
+Link: https://lore.kernel.org/netdev/20210116012515.3152-1-tobias@waldekranz.com/
+Ref: https://gitlab.nic.cz/turris/turris-build/-/issues/165
+Submitted-by: DENG Qingfang <dqfext@gmail.com>
+---
+ drivers/net/dsa/mv88e6xxx/chip.c | 3 +++
+ 3 files changed, 3 insertions(+)
+
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -2705,6 +2705,9 @@ static int mv88e6xxx_setup_port(struct m