summaryrefslogtreecommitdiff
path: root/drivers/net/dsa/b53/b53_priv.h
diff options
context:
space:
mode:
authorFlorian Fainelli <f.fainelli@gmail.com>2016-06-09 18:23:57 -0700
committerDavid S. Miller <davem@davemloft.net>2016-06-09 22:21:29 -0700
commita2482d2ce3498642d180b9d7453d0d9c7452cb29 (patch)
treea1ed9389715c39ef6a2057ff10b40caf9cc6cbc6 /drivers/net/dsa/b53/b53_priv.h
parentff39c2d68679c8d2d07d0915d6ddbdb6fb26837c (diff)
net: dsa: b53: Plug in VLAN support
Add support for configuration VLANs on B53 devices by implementing the port VLAN add/del/dump functions. We currently default to a behavior which is equivalent to having VLAN filtering turned on, where all VLANs not programmed into the VLAN port-based vector will be discarded on ingress. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa/b53/b53_priv.h')
-rw-r--r--drivers/net/dsa/b53/b53_priv.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/drivers/net/dsa/b53/b53_priv.h b/drivers/net/dsa/b53/b53_priv.h
index c19842960f28..5d8c602fb877 100644
--- a/drivers/net/dsa/b53/b53_priv.h
+++ b/drivers/net/dsa/b53/b53_priv.h
@@ -69,6 +69,12 @@ struct b53_port {
struct net_device *bridge_dev;
};
+struct b53_vlan {
+ u16 members;
+ u16 untag;
+ bool valid;
+};
+
struct b53_device {
struct dsa_switch *ds;
struct b53_platform_data *pdata;
@@ -99,14 +105,13 @@ struct b53_device {
/* Master MDIO bus we got probed from */
struct mii_bus *bus;
- /* Slave MDIO bus we created */
- struct mii_bus *slave_bus;
void *priv;
/* run time configuration */
- unsigned enable_jumbo:1;
- unsigned allow_vid_4095:1;
+ bool enable_jumbo;
+
unsigned int num_vlans;
+ struct b53_vlan *vlans;
unsigned int num_ports;
struct b53_port *ports;
};