Lines Matching refs:l2_lookup
881 struct sja1105_l2_lookup_entry *l2_lookup; in sja1105_find_static_fdb_entry() local
886 l2_lookup = table->entries; in sja1105_find_static_fdb_entry()
889 if (l2_lookup[i].macaddr == requested->macaddr && in sja1105_find_static_fdb_entry()
890 l2_lookup[i].vlanid == requested->vlanid && in sja1105_find_static_fdb_entry()
891 l2_lookup[i].destports & BIT(port)) in sja1105_find_static_fdb_entry()
907 struct sja1105_l2_lookup_entry *l2_lookup; in sja1105_static_fdb_change() local
928 l2_lookup = table->entries; in sja1105_static_fdb_change()
937 l2_lookup[match] = *requested; in sja1105_static_fdb_change()
944 l2_lookup[match] = l2_lookup[table->entry_count - 1]; in sja1105_static_fdb_change()
967 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105et_is_fdb_entry_in_bin() local
974 index, &l2_lookup)) { in sja1105et_is_fdb_entry_in_bin()
980 if (l2_lookup.macaddr == ether_addr_to_u64(addr) && in sja1105et_is_fdb_entry_in_bin()
981 l2_lookup.vlanid == vid) { in sja1105et_is_fdb_entry_in_bin()
983 *match = l2_lookup; in sja1105et_is_fdb_entry_in_bin()
994 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105et_fdb_add() local
1003 &l2_lookup, &last_unused); in sja1105et_fdb_add()
1009 if (l2_lookup.destports & BIT(port)) in sja1105et_fdb_add()
1011 l2_lookup.destports |= BIT(port); in sja1105et_fdb_add()
1018 l2_lookup.macaddr = ether_addr_to_u64(addr); in sja1105et_fdb_add()
1019 l2_lookup.destports = BIT(port); in sja1105et_fdb_add()
1020 l2_lookup.vlanid = vid; in sja1105et_fdb_add()
1040 l2_lookup.index = sja1105et_fdb_index(bin, way); in sja1105et_fdb_add()
1043 l2_lookup.index, &l2_lookup, in sja1105et_fdb_add()
1048 return sja1105_static_fdb_change(priv, port, &l2_lookup, true); in sja1105et_fdb_add()
1054 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105et_fdb_del() local
1061 &l2_lookup, NULL); in sja1105et_fdb_del()
1071 l2_lookup.destports &= ~BIT(port); in sja1105et_fdb_del()
1073 if (l2_lookup.destports) in sja1105et_fdb_del()
1079 index, &l2_lookup, keep); in sja1105et_fdb_del()
1083 return sja1105_static_fdb_change(priv, port, &l2_lookup, keep); in sja1105et_fdb_del()
1089 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105pqrs_fdb_add() local
1094 l2_lookup.macaddr = ether_addr_to_u64(addr); in sja1105pqrs_fdb_add()
1095 l2_lookup.vlanid = vid; in sja1105pqrs_fdb_add()
1096 l2_lookup.iotag = SJA1105_S_TAG; in sja1105pqrs_fdb_add()
1097 l2_lookup.mask_macaddr = GENMASK_ULL(ETH_ALEN * 8 - 1, 0); in sja1105pqrs_fdb_add()
1099 l2_lookup.mask_vlanid = VLAN_VID_MASK; in sja1105pqrs_fdb_add()
1100 l2_lookup.mask_iotag = BIT(0); in sja1105pqrs_fdb_add()
1102 l2_lookup.mask_vlanid = 0; in sja1105pqrs_fdb_add()
1103 l2_lookup.mask_iotag = 0; in sja1105pqrs_fdb_add()
1105 l2_lookup.destports = BIT(port); in sja1105pqrs_fdb_add()
1108 SJA1105_SEARCH, &l2_lookup); in sja1105pqrs_fdb_add()
1113 if (l2_lookup.destports & BIT(port)) in sja1105pqrs_fdb_add()
1118 l2_lookup.destports |= BIT(port); in sja1105pqrs_fdb_add()
1136 l2_lookup.lockeds = true; in sja1105pqrs_fdb_add()
1137 l2_lookup.index = i; in sja1105pqrs_fdb_add()
1141 l2_lookup.index, &l2_lookup, in sja1105pqrs_fdb_add()
1146 return sja1105_static_fdb_change(priv, port, &l2_lookup, true); in sja1105pqrs_fdb_add()
1152 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105pqrs_fdb_del() local
1157 l2_lookup.macaddr = ether_addr_to_u64(addr); in sja1105pqrs_fdb_del()
1158 l2_lookup.vlanid = vid; in sja1105pqrs_fdb_del()
1159 l2_lookup.iotag = SJA1105_S_TAG; in sja1105pqrs_fdb_del()
1160 l2_lookup.mask_macaddr = GENMASK_ULL(ETH_ALEN * 8 - 1, 0); in sja1105pqrs_fdb_del()
1162 l2_lookup.mask_vlanid = VLAN_VID_MASK; in sja1105pqrs_fdb_del()
1163 l2_lookup.mask_iotag = BIT(0); in sja1105pqrs_fdb_del()
1165 l2_lookup.mask_vlanid = 0; in sja1105pqrs_fdb_del()
1166 l2_lookup.mask_iotag = 0; in sja1105pqrs_fdb_del()
1168 l2_lookup.destports = BIT(port); in sja1105pqrs_fdb_del()
1171 SJA1105_SEARCH, &l2_lookup); in sja1105pqrs_fdb_del()
1175 l2_lookup.destports &= ~BIT(port); in sja1105pqrs_fdb_del()
1180 if (l2_lookup.destports) in sja1105pqrs_fdb_del()
1186 l2_lookup.index, &l2_lookup, keep); in sja1105pqrs_fdb_del()
1190 return sja1105_static_fdb_change(priv, port, &l2_lookup, keep); in sja1105pqrs_fdb_del()
1232 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105_fdb_dump() local
1237 i, &l2_lookup); in sja1105_fdb_dump()
1252 if (!(l2_lookup.destports & BIT(port))) in sja1105_fdb_dump()
1254 u64_to_ether_addr(l2_lookup.macaddr, macaddr); in sja1105_fdb_dump()
1258 l2_lookup.vlanid = 0; in sja1105_fdb_dump()
1259 cb(macaddr, l2_lookup.vlanid, l2_lookup.lockeds, data); in sja1105_fdb_dump()