Lines Matching defs:vlan
400 static void ksz8795_from_vlan(u16 vlan, u8 *fid, u8 *member, u8 *valid)
402 *fid = vlan & VLAN_TABLE_FID;
403 *member = (vlan & VLAN_TABLE_MEMBERSHIP) >> VLAN_TABLE_MEMBERSHIP_S;
404 *valid = !!(vlan & VLAN_TABLE_VALID);
407 static void ksz8795_to_vlan(u8 fid, u8 member, u8 valid, u16 *vlan)
409 *vlan = fid;
410 *vlan |= (u16)member << VLAN_TABLE_MEMBERSHIP_S;
412 *vlan |= VLAN_TABLE_VALID;
428 static void ksz8795_r_vlan_table(struct ksz_device *dev, u16 vid, u16 *vlan)
439 *vlan = data[index];
442 static void ksz8795_w_vlan_table(struct ksz_device *dev, u16 vid, u16 vlan)
453 data[index] = vlan;
454 dev->vlan_cache[vid].table[0] = vlan;
806 const struct switchdev_obj_port_vlan *vlan)
808 bool untagged = vlan->flags & BRIDGE_VLAN_INFO_UNTAGGED;
818 !(vlan->vid_begin == 0 && vlan->vid_end == 0) &&
823 const struct switchdev_obj_port_vlan *vlan)
831 if (ksz8795_port_vlan_changes_remove_tag(ds, port, vlan)) {
838 if (vid == vlan->vid_begin) {
839 vid = vlan->vid_end;
850 return ksz_port_vlan_prepare(ds, port, vlan);
854 const struct switchdev_obj_port_vlan *vlan)
856 bool untagged = vlan->flags & BRIDGE_VLAN_INFO_UNTAGGED;
862 if (ksz8795_port_vlan_changes_remove_tag(ds, port, vlan)) {
867 for (vid = vlan->vid_begin; vid <= vlan->vid_end; vid++) {
883 if (vlan->flags & BRIDGE_VLAN_INFO_PVID)
898 const struct switchdev_obj_port_vlan *vlan)
908 for (vid = vlan->vid_begin; vid <= vlan->vid_end; vid++) {