Lines Matching refs:fid

874 static int _mv88e6xxx_atu_cmd(struct dsa_switch *ds, int fid, u16 cmd)  in _mv88e6xxx_atu_cmd()  argument
878 ret = _mv88e6xxx_reg_write(ds, REG_GLOBAL, 0x01, fid); in _mv88e6xxx_atu_cmd()
889 static int _mv88e6xxx_flush_fid(struct dsa_switch *ds, int fid) in _mv88e6xxx_flush_fid() argument
897 return _mv88e6xxx_atu_cmd(ds, fid, GLOBAL_ATU_OP_FLUSH_NON_STATIC_DB); in _mv88e6xxx_flush_fid()
922 ret = _mv88e6xxx_flush_fid(ds, ps->fid[port]); in mv88e6xxx_set_port_state()
940 u8 fid = ps->fid[port]; in _mv88e6xxx_update_port_config() local
941 u16 reg = fid << 12; in _mv88e6xxx_update_port_config()
946 reg |= (ps->bridge_mask[fid] | in _mv88e6xxx_update_port_config()
953 static int _mv88e6xxx_update_bridge_config(struct dsa_switch *ds, int fid) in _mv88e6xxx_update_bridge_config() argument
964 if (ps->fid[port] != fid) in _mv88e6xxx_update_bridge_config()
972 return _mv88e6xxx_flush_fid(ds, fid); in _mv88e6xxx_update_bridge_config()
982 int fid; in mv88e6xxx_join_bridge() local
987 fid = ps->fid[port]; in mv88e6xxx_join_bridge()
990 fid = ps->fid[__ffs(nmask)]; in mv88e6xxx_join_bridge()
992 nmask = ps->bridge_mask[fid] | (1 << port); in mv88e6xxx_join_bridge()
996 fid, br_port_mask, nmask); in mv88e6xxx_join_bridge()
1002 ps->bridge_mask[fid] = br_port_mask; in mv88e6xxx_join_bridge()
1004 if (fid != ps->fid[port]) { in mv88e6xxx_join_bridge()
1005 ps->fid_mask |= 1 << ps->fid[port]; in mv88e6xxx_join_bridge()
1006 ps->fid[port] = fid; in mv88e6xxx_join_bridge()
1007 ret = _mv88e6xxx_update_bridge_config(ds, fid); in mv88e6xxx_join_bridge()
1018 u8 fid, newfid; in mv88e6xxx_leave_bridge() local
1021 fid = ps->fid[port]; in mv88e6xxx_leave_bridge()
1023 if (ps->bridge_mask[fid] != br_port_mask) { in mv88e6xxx_leave_bridge()
1026 fid, br_port_mask, ps->bridge_mask[fid]); in mv88e6xxx_leave_bridge()
1040 ps->fid[port] = newfid; in mv88e6xxx_leave_bridge()
1042 ps->bridge_mask[fid] &= ~(1 << port); in mv88e6xxx_leave_bridge()
1045 ret = _mv88e6xxx_update_bridge_config(ds, fid); in mv88e6xxx_leave_bridge()
1124 u8 fid = ps->fid[port]; in __mv88e6xxx_port_fdb_cmd() local
1140 ret = _mv88e6xxx_atu_cmd(ds, fid, GLOBAL_ATU_OP_LOAD_DB); in __mv88e6xxx_port_fdb_cmd()
1179 u8 fid = ps->fid[port]; in __mv88e6xxx_port_getnext() local
1191 ret = _mv88e6xxx_atu_cmd(ds, fid, GLOBAL_ATU_OP_GET_NEXT_DB); in __mv88e6xxx_port_getnext()
1247 int ret, fid; in mv88e6xxx_setup_port_common() local
1263 fid = __ffs(ps->fid_mask); in mv88e6xxx_setup_port_common()
1264 ps->fid[port] = fid; in mv88e6xxx_setup_port_common()
1265 ps->fid_mask &= ~(1 << fid); in mv88e6xxx_setup_port_common()
1268 ps->bridge_mask[fid] = 1 << port; in mv88e6xxx_setup_port_common()