Commit e9d204fd authored by Jonathan McDowell's avatar Jonathan McDowell Committed by David S. Miller

net: dsa: qca8k: Add define for port VID

Rather than using a magic value of 1 when configuring the port VIDs add
a QCA8K_PORT_VID_DEF define and use that instead. Also fix up the
bitmask in the process; the top 4 bits are reserved so this wasn't a
problem, but only masking 12 bits is the correct approach.
Signed-off-by: default avatarJonathan McDowell <noodles@earth.li>
Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Acked-by: default avatarVladimir Oltean <olteanv@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent ac6d1835
...@@ -663,10 +663,11 @@ qca8k_setup(struct dsa_switch *ds) ...@@ -663,10 +663,11 @@ qca8k_setup(struct dsa_switch *ds)
* default egress vid * default egress vid
*/ */
qca8k_rmw(priv, QCA8K_EGRESS_VLAN(i), qca8k_rmw(priv, QCA8K_EGRESS_VLAN(i),
0xffff << shift, 1 << shift); 0xfff << shift,
QCA8K_PORT_VID_DEF << shift);
qca8k_write(priv, QCA8K_REG_PORT_VLAN_CTRL0(i), qca8k_write(priv, QCA8K_REG_PORT_VLAN_CTRL0(i),
QCA8K_PORT_VLAN_CVID(1) | QCA8K_PORT_VLAN_CVID(QCA8K_PORT_VID_DEF) |
QCA8K_PORT_VLAN_SVID(1)); QCA8K_PORT_VLAN_SVID(QCA8K_PORT_VID_DEF));
} }
} }
...@@ -1133,7 +1134,7 @@ qca8k_port_fdb_insert(struct qca8k_priv *priv, const u8 *addr, ...@@ -1133,7 +1134,7 @@ qca8k_port_fdb_insert(struct qca8k_priv *priv, const u8 *addr,
{ {
/* Set the vid to the port vlan id if no vid is set */ /* Set the vid to the port vlan id if no vid is set */
if (!vid) if (!vid)
vid = 1; vid = QCA8K_PORT_VID_DEF;
return qca8k_fdb_add(priv, addr, port_mask, vid, return qca8k_fdb_add(priv, addr, port_mask, vid,
QCA8K_ATU_STATUS_STATIC); QCA8K_ATU_STATUS_STATIC);
...@@ -1157,7 +1158,7 @@ qca8k_port_fdb_del(struct dsa_switch *ds, int port, ...@@ -1157,7 +1158,7 @@ qca8k_port_fdb_del(struct dsa_switch *ds, int port,
u16 port_mask = BIT(port); u16 port_mask = BIT(port);
if (!vid) if (!vid)
vid = 1; vid = QCA8K_PORT_VID_DEF;
return qca8k_fdb_del(priv, addr, port_mask, vid); return qca8k_fdb_del(priv, addr, port_mask, vid);
} }
......
...@@ -22,6 +22,8 @@ ...@@ -22,6 +22,8 @@
#define QCA8K_CPU_PORT 0 #define QCA8K_CPU_PORT 0
#define QCA8K_PORT_VID_DEF 1
/* Global control registers */ /* Global control registers */
#define QCA8K_REG_MASK_CTRL 0x000 #define QCA8K_REG_MASK_CTRL 0x000
#define QCA8K_MASK_CTRL_ID_M 0xff #define QCA8K_MASK_CTRL_ID_M 0xff
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment