Lines Matching refs:vid
10 static int sparx5_vlant_set_mask(struct sparx5 *sparx5, u16 vid)
15 bitmap_to_arr32(mask, sparx5->vlan_mask[vid], SPX5_PORTS);
18 spx5_wr(mask[0], sparx5, ANA_L3_VLAN_MASK_CFG(vid));
19 spx5_wr(mask[1], sparx5, ANA_L3_VLAN_MASK_CFG1(vid));
20 spx5_wr(mask[2], sparx5, ANA_L3_VLAN_MASK_CFG2(vid));
27 u16 vid;
35 for (vid = NULL_VID; vid < VLAN_N_VID; vid++)
36 spx5_rmw(ANA_L3_VLAN_CFG_VLAN_FID_SET(vid),
39 ANA_L3_VLAN_CFG(vid));
55 int sparx5_vlan_vid_add(struct sparx5_port *port, u16 vid, bool pvid,
62 if (untagged && port->vid != vid) {
63 if (port->vid) {
66 port->vid);
69 port->vid = vid;
73 set_bit(port->portno, sparx5->vlan_mask[vid]);
74 ret = sparx5_vlant_set_mask(sparx5, vid);
80 port->pvid = vid;
87 int sparx5_vlan_vid_del(struct sparx5_port *port, u16 vid)
96 if (vid == 0)
100 clear_bit(port->portno, sparx5->vlan_mask[vid]);
101 ret = sparx5_vlant_set_mask(sparx5, vid);
106 if (port->pvid == vid)
110 if (port->vid == vid)
111 port->vid = 0;
225 if (port->vid)
234 spx5_rmw(REW_PORT_VLAN_CFG_PORT_VID_SET(port->vid),