aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/pending-5.4
diff options
context:
space:
mode:
authorDENG Qingfang <dengqf6@mail2.sysu.edu.cn>2020-04-20 21:37:17 +0800
committerFelix Fietkau <nbd@nbd.name>2020-06-04 22:21:42 +0200
commitdc4ffaa5ab6830ba9c5b9d9569db2c2aef26755a (patch)
tree0e05c2bb5e301308363150b13e07d61c50c6e2c3 /target/linux/generic/pending-5.4
parentd56d05f01f03f9cc2afa7d91a2033f2288a51f9c (diff)
downloadupstream-dc4ffaa5ab6830ba9c5b9d9569db2c2aef26755a.tar.gz
upstream-dc4ffaa5ab6830ba9c5b9d9569db2c2aef26755a.tar.bz2
upstream-dc4ffaa5ab6830ba9c5b9d9569db2c2aef26755a.zip
generic: fix DSA VLAN filtering
Currently enabling VLAN filtering blocks all traffic in the bridge immediately. That is because DSA ignores all VLAN setup when VLAN filtering is disabled, and when it is enabled, there is no VLAN entry in the VLAN table, causing all traffic to be blocked. Add patches to allow VLAN setup even if VLAN filtering is disabled. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
Diffstat (limited to 'target/linux/generic/pending-5.4')
-rw-r--r--target/linux/generic/pending-5.4/760-net-dsa-mv88e6xxx-fix-vlan-setup.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/target/linux/generic/pending-5.4/760-net-dsa-mv88e6xxx-fix-vlan-setup.patch b/target/linux/generic/pending-5.4/760-net-dsa-mv88e6xxx-fix-vlan-setup.patch
new file mode 100644
index 0000000000..535c753a7b
--- /dev/null
+++ b/target/linux/generic/pending-5.4/760-net-dsa-mv88e6xxx-fix-vlan-setup.patch
@@ -0,0 +1,27 @@
+From a1b291f3f6c80a6c5ccad7283fc472d77a2a4763 Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel@armlinux.org.uk>
+Date: Sun, 22 Dec 2019 12:40:11 +0000
+Subject: [PATCH] net: dsa: mv88e6xxx: fix vlan setup
+
+Provide an option that drivers can set to indicate they want to receive
+vlan configuration even when vlan filtering is disabled. This is safe
+for Marvell DSA bridges, which do not look up ingress traffic in the
+VTU if the port is in 8021Q disabled state. Whether this change is
+suitable for all DSA bridges is not known.
+
+Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
+Signed-off-by: DENG Qingfang <dqfext@gmail.com>
+---
+ drivers/net/dsa/mv88e6xxx/chip.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/net/dsa/mv88e6xxx/chip.c
++++ b/drivers/net/dsa/mv88e6xxx/chip.c
+@@ -2657,6 +2657,7 @@ static int mv88e6xxx_setup(struct dsa_sw
+
+ chip->ds = ds;
+ ds->slave_mii_bus = mv88e6xxx_default_mdio_bus(chip);
++ ds->configure_vlan_while_not_filtering = true;
+
+ mv88e6xxx_reg_lock(chip);
+