Lines Matching refs:l2_lookup
1144 struct sja1105_l2_lookup_entry *l2_lookup; in sja1105_find_static_fdb_entry() local
1149 l2_lookup = table->entries; in sja1105_find_static_fdb_entry()
1152 if (l2_lookup[i].macaddr == requested->macaddr && in sja1105_find_static_fdb_entry()
1153 l2_lookup[i].vlanid == requested->vlanid && in sja1105_find_static_fdb_entry()
1154 l2_lookup[i].destports & BIT(port)) in sja1105_find_static_fdb_entry()
1170 struct sja1105_l2_lookup_entry *l2_lookup; in sja1105_static_fdb_change() local
1191 l2_lookup = table->entries; in sja1105_static_fdb_change()
1200 l2_lookup[match] = *requested; in sja1105_static_fdb_change()
1207 l2_lookup[match] = l2_lookup[table->entry_count - 1]; in sja1105_static_fdb_change()
1230 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105et_is_fdb_entry_in_bin() local
1237 index, &l2_lookup)) { in sja1105et_is_fdb_entry_in_bin()
1243 if (l2_lookup.macaddr == ether_addr_to_u64(addr) && in sja1105et_is_fdb_entry_in_bin()
1244 l2_lookup.vlanid == vid) { in sja1105et_is_fdb_entry_in_bin()
1246 *match = l2_lookup; in sja1105et_is_fdb_entry_in_bin()
1257 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105et_fdb_add() local
1266 &l2_lookup, &last_unused); in sja1105et_fdb_add()
1272 if (l2_lookup.destports & BIT(port)) in sja1105et_fdb_add()
1274 l2_lookup.destports |= BIT(port); in sja1105et_fdb_add()
1281 l2_lookup.macaddr = ether_addr_to_u64(addr); in sja1105et_fdb_add()
1282 l2_lookup.destports = BIT(port); in sja1105et_fdb_add()
1283 l2_lookup.vlanid = vid; in sja1105et_fdb_add()
1303 l2_lookup.index = sja1105et_fdb_index(bin, way); in sja1105et_fdb_add()
1306 l2_lookup.index, &l2_lookup, in sja1105et_fdb_add()
1311 return sja1105_static_fdb_change(priv, port, &l2_lookup, true); in sja1105et_fdb_add()
1317 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105et_fdb_del() local
1324 &l2_lookup, NULL); in sja1105et_fdb_del()
1334 l2_lookup.destports &= ~BIT(port); in sja1105et_fdb_del()
1336 if (l2_lookup.destports) in sja1105et_fdb_del()
1342 index, &l2_lookup, keep); in sja1105et_fdb_del()
1346 return sja1105_static_fdb_change(priv, port, &l2_lookup, keep); in sja1105et_fdb_del()
1352 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105pqrs_fdb_add() local
1357 l2_lookup.macaddr = ether_addr_to_u64(addr); in sja1105pqrs_fdb_add()
1358 l2_lookup.vlanid = vid; in sja1105pqrs_fdb_add()
1359 l2_lookup.iotag = SJA1105_S_TAG; in sja1105pqrs_fdb_add()
1360 l2_lookup.mask_macaddr = GENMASK_ULL(ETH_ALEN * 8 - 1, 0); in sja1105pqrs_fdb_add()
1362 l2_lookup.mask_vlanid = VLAN_VID_MASK; in sja1105pqrs_fdb_add()
1363 l2_lookup.mask_iotag = BIT(0); in sja1105pqrs_fdb_add()
1365 l2_lookup.mask_vlanid = 0; in sja1105pqrs_fdb_add()
1366 l2_lookup.mask_iotag = 0; in sja1105pqrs_fdb_add()
1368 l2_lookup.destports = BIT(port); in sja1105pqrs_fdb_add()
1371 SJA1105_SEARCH, &l2_lookup); in sja1105pqrs_fdb_add()
1376 if (l2_lookup.destports & BIT(port)) in sja1105pqrs_fdb_add()
1381 l2_lookup.destports |= BIT(port); in sja1105pqrs_fdb_add()
1399 l2_lookup.lockeds = true; in sja1105pqrs_fdb_add()
1400 l2_lookup.index = i; in sja1105pqrs_fdb_add()
1404 l2_lookup.index, &l2_lookup, in sja1105pqrs_fdb_add()
1409 return sja1105_static_fdb_change(priv, port, &l2_lookup, true); in sja1105pqrs_fdb_add()
1415 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105pqrs_fdb_del() local
1420 l2_lookup.macaddr = ether_addr_to_u64(addr); in sja1105pqrs_fdb_del()
1421 l2_lookup.vlanid = vid; in sja1105pqrs_fdb_del()
1422 l2_lookup.iotag = SJA1105_S_TAG; in sja1105pqrs_fdb_del()
1423 l2_lookup.mask_macaddr = GENMASK_ULL(ETH_ALEN * 8 - 1, 0); in sja1105pqrs_fdb_del()
1425 l2_lookup.mask_vlanid = VLAN_VID_MASK; in sja1105pqrs_fdb_del()
1426 l2_lookup.mask_iotag = BIT(0); in sja1105pqrs_fdb_del()
1428 l2_lookup.mask_vlanid = 0; in sja1105pqrs_fdb_del()
1429 l2_lookup.mask_iotag = 0; in sja1105pqrs_fdb_del()
1431 l2_lookup.destports = BIT(port); in sja1105pqrs_fdb_del()
1434 SJA1105_SEARCH, &l2_lookup); in sja1105pqrs_fdb_del()
1438 l2_lookup.destports &= ~BIT(port); in sja1105pqrs_fdb_del()
1443 if (l2_lookup.destports) in sja1105pqrs_fdb_del()
1449 l2_lookup.index, &l2_lookup, keep); in sja1105pqrs_fdb_del()
1453 return sja1105_static_fdb_change(priv, port, &l2_lookup, keep); in sja1105pqrs_fdb_del()
1495 struct sja1105_l2_lookup_entry l2_lookup = {0}; in sja1105_fdb_dump() local
1500 i, &l2_lookup); in sja1105_fdb_dump()
1515 if (!(l2_lookup.destports & BIT(port))) in sja1105_fdb_dump()
1517 u64_to_ether_addr(l2_lookup.macaddr, macaddr); in sja1105_fdb_dump()
1521 l2_lookup.vlanid = 0; in sja1105_fdb_dump()
1522 cb(macaddr, l2_lookup.vlanid, l2_lookup.lockeds, data); in sja1105_fdb_dump()