summaryrefslogtreecommitdiffstats
path: root/include/net/dsa.h
diff options
context:
space:
mode:
authorVladimir Oltean <olteanv@gmail.com>2019-04-28 20:45:44 +0200
committerDavid S. Miller <davem@davemloft.net>2019-05-01 05:05:28 +0200
commit8f5d16f638b9a1adf544a7f8cfd11ac1c01c6e25 (patch)
tree0d1d77d830633344b8ace3934802cb2aa104f168 /include/net/dsa.h
parentnet: dsa: Store vlan_filtering as a property of dsa_port (diff)
downloadlinux-8f5d16f638b9a1adf544a7f8cfd11ac1c01c6e25.tar.xz
linux-8f5d16f638b9a1adf544a7f8cfd11ac1c01c6e25.zip
net: dsa: Be aware of switches where VLAN filtering is a global setting
On some switches, the action of whether to parse VLAN frame headers and use that information for ingress admission is configurable, but not per port. Such is the case for the Broadcom BCM53xx and the NXP SJA1105 families, for example. In that case, DSA can prevent the bridge core from trying to apply different VLAN filtering settings on net devices that belong to the same switch. Signed-off-by: Vladimir Oltean <olteanv@gmail.com> Suggested-by: Florian Fainelli <f.fainelli@gmail.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/dsa.h')
-rw-r--r--include/net/dsa.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/net/dsa.h b/include/net/dsa.h
index 79a87913126c..aab3c2029edd 100644
--- a/include/net/dsa.h
+++ b/include/net/dsa.h
@@ -228,6 +228,11 @@ struct dsa_switch {
/* Number of switch port queues */
unsigned int num_tx_queues;
+ /* Disallow bridge core from requesting different VLAN awareness
+ * settings on ports if not hardware-supported
+ */
+ bool vlan_filtering_is_global;
+
unsigned long *bitmap;
unsigned long _bitmap;