/Linux-v5.15/drivers/net/ethernet/mellanox/mlxsw/ |
D | spectrum_acl_tcam.c | 33 struct mlxsw_sp_acl_tcam *tcam) in mlxsw_sp_acl_tcam_init() argument 42 mutex_init(&tcam->lock); in mlxsw_sp_acl_tcam_init() 43 tcam->vregion_rehash_intrvl = in mlxsw_sp_acl_tcam_init() 45 INIT_LIST_HEAD(&tcam->vregion_list); in mlxsw_sp_acl_tcam_init() 55 alloc_size = sizeof(tcam->used_regions[0]) * BITS_TO_LONGS(max_regions); in mlxsw_sp_acl_tcam_init() 56 tcam->used_regions = kzalloc(alloc_size, GFP_KERNEL); in mlxsw_sp_acl_tcam_init() 57 if (!tcam->used_regions) in mlxsw_sp_acl_tcam_init() 59 tcam->max_regions = max_regions; in mlxsw_sp_acl_tcam_init() 62 alloc_size = sizeof(tcam->used_groups[0]) * BITS_TO_LONGS(max_groups); in mlxsw_sp_acl_tcam_init() 63 tcam->used_groups = kzalloc(alloc_size, GFP_KERNEL); in mlxsw_sp_acl_tcam_init() [all …]
|
D | spectrum2_acl_tcam.c | 72 struct mlxsw_sp2_acl_tcam *tcam = priv; in mlxsw_sp2_acl_tcam_init() local 80 tcam->kvdl_count = _tcam->max_regions; in mlxsw_sp2_acl_tcam_init() 82 tcam->kvdl_count, &tcam->kvdl_index); in mlxsw_sp2_acl_tcam_init() 100 for (i = 0; i < tcam->kvdl_count; i++) { in mlxsw_sp2_acl_tcam_init() 101 mlxsw_reg_pefa_pack(pefa_pl, tcam->kvdl_index + i, in mlxsw_sp2_acl_tcam_init() 107 mlxsw_reg_pgcr_pack(pgcr_pl, tcam->kvdl_index); in mlxsw_sp2_acl_tcam_init() 112 err = mlxsw_sp_acl_atcam_init(mlxsw_sp, &tcam->atcam); in mlxsw_sp2_acl_tcam_init() 126 tcam->kvdl_count, tcam->kvdl_index); in mlxsw_sp2_acl_tcam_init() 132 struct mlxsw_sp2_acl_tcam *tcam = priv; in mlxsw_sp2_acl_tcam_fini() local 134 mlxsw_sp_acl_atcam_fini(mlxsw_sp, &tcam->atcam); in mlxsw_sp2_acl_tcam_fini() [all …]
|
D | spectrum_acl_tcam.h | 29 struct mlxsw_sp_acl_tcam *tcam); 31 struct mlxsw_sp_acl_tcam *tcam); 33 struct mlxsw_sp_acl_tcam *tcam); 35 struct mlxsw_sp_acl_tcam *tcam, 44 struct mlxsw_sp_acl_tcam *tcam, void *ruleset_priv,
|
D | spectrum_acl.c | 35 struct mlxsw_sp_acl_tcam tcam; member 183 err = ops->ruleset_add(mlxsw_sp, &acl->tcam, ruleset->priv, in mlxsw_sp_acl_ruleset_create() 990 err = mlxsw_sp_acl_tcam_init(mlxsw_sp, &acl->tcam); in mlxsw_sp_acl_init() 1018 mlxsw_sp_acl_tcam_fini(mlxsw_sp, &acl->tcam); in mlxsw_sp_acl_fini() 1032 &acl->tcam); in mlxsw_sp_acl_region_rehash_intrvl_get() 1040 &acl->tcam, val); in mlxsw_sp_acl_region_rehash_intrvl_set()
|
D | spectrum1_acl_tcam.c | 51 struct mlxsw_sp_acl_tcam *tcam) in mlxsw_sp1_acl_tcam_init() argument
|
D | spectrum.h | 1053 struct mlxsw_sp_acl_tcam *tcam);
|
/Linux-v5.15/drivers/net/ethernet/intel/ice/ |
D | ice_flex_pipe.c | 348 return boost->tcam + index; in ice_boost_tcam_handler() 365 struct ice_boost_tcam_entry *tcam; in ice_find_boost_entry() local 374 tcam = ice_pkg_enum_entry(ice_seg, &state, in ice_find_boost_entry() 377 if (tcam && le16_to_cpu(tcam->addr) == addr) { in ice_find_boost_entry() 378 *entry = tcam; in ice_find_boost_entry() 383 } while (tcam); in ice_find_boost_entry() 1710 struct_size(sect_rx, tcam, 1)); in ice_create_tunnel() 1716 struct_size(sect_tx, tcam, 1)); in ice_create_tunnel() 1722 memcpy(sect_rx->tcam, hw->tnl.tbl[index].boost_entry, in ice_create_tunnel() 1723 sizeof(*sect_rx->tcam)); in ice_create_tunnel() [all …]
|
D | ice_flex_type.h | 316 struct ice_boost_tcam_entry tcam[]; member 320 struct_size((struct ice_boost_tcam_section *)0, tcam, 1) - \ 461 struct ice_tcam_inf tcam[ICE_MAX_TCAM_PER_PROFILE]; member
|
/Linux-v5.15/drivers/net/ethernet/marvell/mvpp2/ |
D | mvpp2_cls.c | 515 mvpp2_write(priv, MVPP22_CLS_C2_TCAM_DATA0, c2->tcam[0]); in mvpp2_cls_c2_write() 516 mvpp2_write(priv, MVPP22_CLS_C2_TCAM_DATA1, c2->tcam[1]); in mvpp2_cls_c2_write() 517 mvpp2_write(priv, MVPP22_CLS_C2_TCAM_DATA2, c2->tcam[2]); in mvpp2_cls_c2_write() 518 mvpp2_write(priv, MVPP22_CLS_C2_TCAM_DATA3, c2->tcam[3]); in mvpp2_cls_c2_write() 520 mvpp2_write(priv, MVPP22_CLS_C2_TCAM_DATA4, c2->tcam[4]); in mvpp2_cls_c2_write() 531 c2->tcam[0] = mvpp2_read(priv, MVPP22_CLS_C2_TCAM_DATA0); in mvpp2_cls_c2_read() 532 c2->tcam[1] = mvpp2_read(priv, MVPP22_CLS_C2_TCAM_DATA1); in mvpp2_cls_c2_read() 533 c2->tcam[2] = mvpp2_read(priv, MVPP22_CLS_C2_TCAM_DATA2); in mvpp2_cls_c2_read() 534 c2->tcam[3] = mvpp2_read(priv, MVPP22_CLS_C2_TCAM_DATA3); in mvpp2_cls_c2_read() 535 c2->tcam[4] = mvpp2_read(priv, MVPP22_CLS_C2_TCAM_DATA4); in mvpp2_cls_c2_read() [all …]
|
D | mvpp2_prs.c | 30 pe->tcam[MVPP2_PRS_TCAM_INV_WORD] &= ~MVPP2_PRS_TCAM_INV_MASK; in mvpp2_prs_hw_write() 40 mvpp2_write(priv, MVPP2_PRS_TCAM_DATA_REG(i), pe->tcam[i]); in mvpp2_prs_hw_write() 60 pe->tcam[MVPP2_PRS_TCAM_INV_WORD] = mvpp2_read(priv, in mvpp2_prs_init_from_hw() 62 if (pe->tcam[MVPP2_PRS_TCAM_INV_WORD] & MVPP2_PRS_TCAM_INV_MASK) in mvpp2_prs_init_from_hw() 66 pe->tcam[i] = mvpp2_read(priv, MVPP2_PRS_TCAM_DATA_REG(i)); in mvpp2_prs_init_from_hw() 103 pe->tcam[MVPP2_PRS_TCAM_LU_WORD] &= ~MVPP2_PRS_TCAM_LU(MVPP2_PRS_LU_MASK); in mvpp2_prs_tcam_lu_set() 104 pe->tcam[MVPP2_PRS_TCAM_LU_WORD] &= ~MVPP2_PRS_TCAM_LU_EN(MVPP2_PRS_LU_MASK); in mvpp2_prs_tcam_lu_set() 105 pe->tcam[MVPP2_PRS_TCAM_LU_WORD] |= MVPP2_PRS_TCAM_LU(lu & MVPP2_PRS_LU_MASK); in mvpp2_prs_tcam_lu_set() 106 pe->tcam[MVPP2_PRS_TCAM_LU_WORD] |= MVPP2_PRS_TCAM_LU_EN(MVPP2_PRS_LU_MASK); in mvpp2_prs_tcam_lu_set() 114 pe->tcam[MVPP2_PRS_TCAM_PORT_WORD] &= ~MVPP2_PRS_TCAM_PORT_EN(BIT(port)); in mvpp2_prs_tcam_port_set() [all …]
|
D | mvpp2_cls.h | 117 u32 tcam[MVPP2_CLS_C2_TCAM_WORDS]; member
|
D | mvpp2_prs.h | 273 u32 tcam[MVPP2_PRS_TCAM_WORDS]; member
|
D | mvpp2_debugfs.c | 375 ai = pe.tcam[MVPP2_PRS_TCAM_AI_WORD] & MVPP2_PRS_AI_MASK; in mvpp2_dbgfs_prs_ai_show() 376 ai_mask = (pe.tcam[MVPP2_PRS_TCAM_AI_WORD] >> 16) & MVPP2_PRS_AI_MASK; in mvpp2_dbgfs_prs_ai_show()
|
/Linux-v5.15/drivers/net/ethernet/chelsio/cxgb4/ |
D | cudbg_lib.c | 2539 struct cudbg_mps_tcam *tcam, u32 idx) in cudbg_collect_tcam_index() argument 2565 tcam->lookup_type = DATALKPTYPE_G(data2); in cudbg_collect_tcam_index() 2571 if (tcam->lookup_type && tcam->lookup_type != DATALKPTYPE_M) { in cudbg_collect_tcam_index() 2573 tcam->vniy = (data2 & DATAVIDH2_F) | DATAVIDH1_G(data2); in cudbg_collect_tcam_index() 2574 tcam->vniy = (tcam->vniy << 16) | VIDL_G(val); in cudbg_collect_tcam_index() 2575 tcam->dip_hit = data2 & DATADIPHIT_F; in cudbg_collect_tcam_index() 2577 tcam->vlan_vld = data2 & DATAVIDH2_F; in cudbg_collect_tcam_index() 2578 tcam->ivlan = VIDL_G(val); in cudbg_collect_tcam_index() 2581 tcam->port_num = DATAPORTNUM_G(data2); in cudbg_collect_tcam_index() 2590 if (tcam->lookup_type && tcam->lookup_type != DATALKPTYPE_M) { in cudbg_collect_tcam_index() [all …]
|
/Linux-v5.15/drivers/net/ethernet/sun/ |
D | niu.c | 4998 tp = &parent->tcam[index]; in niu_set_ip_frag_rule() 7162 tp = &parent->tcam[idx]; in niu_get_ethtool_tcam_entry() 7245 tp = &parent->tcam[idx]; in niu_get_ethtool_tcam_all() 7499 tp = &parent->tcam[idx]; in niu_add_ethtool_tcam_entry() 7583 tp = &parent->tcam[idx]; in niu_del_ethtool_tcam_entry()
|
D | niu.h | 3116 struct niu_tcam_entry tcam[NIU_TCAM_ENTRIES_MAX]; member
|