Home
last modified time | relevance | path

Searched refs:flow_cfg (Results 1 – 8 of 8) sorted by relevance

/linux/drivers/net/ethernet/marvell/octeontx2/nic/
H A Dotx2_flows.c33 static void otx2_clear_ntuple_flow_info(struct otx2_nic *pfvf, struct otx2_flow_config *flow_cfg) in otx2_clear_ntuple_flow_info() argument
35 devm_kfree(pfvf->dev, flow_cfg->flow_ent); in otx2_clear_ntuple_flow_info()
36 flow_cfg->flow_ent = NULL; in otx2_clear_ntuple_flow_info()
37 flow_cfg->max_flows = 0; in otx2_clear_ntuple_flow_info()
133 struct otx2_flow_config *flow_cfg = pfvf->flow_cfg; in otx2_free_ntuple_mcam_entries() local
137 if (!flow_cfg->max_flows) in otx2_free_ntuple_mcam_entries()
141 for (ent = 0; ent < flow_cfg->max_flows; ent++) { in otx2_free_ntuple_mcam_entries()
146 req->entry = flow_cfg->flow_ent[ent]; in otx2_free_ntuple_mcam_entries()
154 otx2_clear_ntuple_flow_info(pfvf, flow_cfg); in otx2_free_ntuple_mcam_entries()
160 struct otx2_flow_config *flow_cfg = pfvf->flow_cfg; in otx2_alloc_mcam_entries() local
[all …]
H A Dotx2_tc.c509 refcount_inc(&nic->flow_cfg->mark_flows); in otx2_tc_parse_actions()
942 struct otx2_flow_config *flow_cfg = pfvf->flow_cfg; in otx2_destroy_tc_flow_list() local
948 list_for_each_entry_safe(iter, tmp, &flow_cfg->flow_list_tc, list) { in otx2_destroy_tc_flow_list()
951 flow_cfg->nr_flows--; in otx2_destroy_tc_flow_list()
956 otx2_tc_get_entry_by_cookie(struct otx2_flow_config *flow_cfg, in otx2_tc_get_entry_by_cookie() argument
961 list_for_each_entry(tmp, &flow_cfg->flow_list_tc, list) { in otx2_tc_get_entry_by_cookie()
970 otx2_tc_get_entry_by_index(struct otx2_flow_config *flow_cfg, int index) in otx2_tc_get_entry_by_index() argument
975 list_for_each_entry(tmp, &flow_cfg->flow_list_tc, list) { in otx2_tc_get_entry_by_index()
984 static void otx2_tc_del_from_flow_list(struct otx2_flow_config *flow_cfg, in otx2_tc_del_from_flow_list() argument
990 list_for_each_safe(pos, n, &flow_cfg->flow_list_tc) { in otx2_tc_del_from_flow_list()
[all …]
H A Dcn20k.c254 static int cn20k_tc_get_entry_index(struct otx2_flow_config *flow_cfg, in cn20k_tc_get_entry_index() argument
260 list_for_each_entry(tmp, &flow_cfg->flow_list_tc, list) { in cn20k_tc_get_entry_index()
296 struct otx2_flow_config *flow_cfg, in cn20k_tc_check_entry_shiftable() argument
305 first = list_first_entry(&flow_cfg->flow_list_tc, struct otx2_tc_flow, in cn20k_tc_check_entry_shiftable()
312 list_for_each_entry_safe(tmp, n, &flow_cfg->flow_list_tc, list) { in cn20k_tc_check_entry_shiftable()
335 struct otx2_flow_config *flow_cfg, in cn20k_tc_update_mcam_table_del_req() argument
343 index = cn20k_tc_get_entry_index(flow_cfg, node); in cn20k_tc_update_mcam_table_del_req()
349 first = list_first_entry(&flow_cfg->flow_list_tc, struct otx2_tc_flow, in cn20k_tc_update_mcam_table_del_req()
356 if (!cn20k_tc_check_entry_shiftable(nic, flow_cfg, node, in cn20k_tc_update_mcam_table_del_req()
367 list_for_each_entry_safe(tmp, n, &flow_cfg->flow_list_tc, list) { in cn20k_tc_update_mcam_table_del_req()
[all …]
H A Drep.c43 rep->flow_cfg = kzalloc_objs(struct otx2_flow_config, 1); in rvu_rep_mcam_flow_init()
45 if (!rep->flow_cfg) in rvu_rep_mcam_flow_init()
50 rep->flow_cfg->flow_ent = kcalloc(count, sizeof(u16), GFP_KERNEL); in rvu_rep_mcam_flow_init()
51 if (!rep->flow_cfg->flow_ent) in rvu_rep_mcam_flow_init()
74 rep->flow_cfg->flow_ent[ent + allocated] = rsp->entry_list[ent]; in rvu_rep_mcam_flow_init()
88 sort(&rep->flow_cfg->flow_ent[0], allocated, in rvu_rep_mcam_flow_init()
89 sizeof(rep->flow_cfg->flow_ent[0]), mcam_entry_cmp, NULL); in rvu_rep_mcam_flow_init()
93 rep->flow_cfg->max_flows = allocated; in rvu_rep_mcam_flow_init()
101 INIT_LIST_HEAD(&rep->flow_cfg->flow_list); in rvu_rep_mcam_flow_init()
102 INIT_LIST_HEAD(&rep->flow_cfg->flow_list_tc); in rvu_rep_mcam_flow_init()
[all …]
H A Drep.h39 struct otx2_flow_config *flow_cfg; member
H A Dotx2_pf.c1295 if (enable && !bitmap_empty(pf->flow_cfg->dmacflt_bmap, in otx2_cgx_config_loopback()
1296 pf->flow_cfg->dmacflt_max_flows)) in otx2_cgx_config_loopback()
1852 (netdev_uc_count(netdev) > pf->flow_cfg->ucast_flt_cnt)) { in otx2_do_set_rx_mode()
2606 struct otx2_flow_config *flow_cfg = pf->flow_cfg; in otx2_do_set_vf_vlan() local
2647 flow_cfg->def_ent[flow_cfg->vf_vlan_offset + idx]; in otx2_do_set_vf_vlan()
2660 flow_cfg->def_ent[flow_cfg->vf_vlan_offset + idx]; in otx2_do_set_vf_vlan()
2674 req->entry = flow_cfg->def_ent[flow_cfg->vf_vlan_offset + idx]; in otx2_do_set_vf_vlan()
2725 req->entry = flow_cfg->def_ent[flow_cfg->vf_vlan_offset + idx]; in otx2_do_set_vf_vlan()
/linux/drivers/net/ethernet/ti/icssg/
H A Dicssg_config.c512 struct icssg_flow_cfg __iomem *flow_cfg; in icssg_config() local
547 flow_cfg = config + PSI_L_REGULAR_FLOW_ID_BASE_OFFSET; in icssg_config()
548 writew(emac->rx_flow_id_base, &flow_cfg->rx_base_flow); in icssg_config()
549 writew(0, &flow_cfg->mgm_base_flow); in icssg_config()
H A Dicssg_prueth.c1017 struct icssg_flow_cfg __iomem *flow_cfg; in emac_ndo_open() local
1073 flow_cfg = emac->dram.va + ICSSG_CONFIG_OFFSET + PSI_L_REGULAR_FLOW_ID_BASE_OFFSET; in emac_ndo_open()
1074 writew(emac->rx_flow_id_base, &flow_cfg->rx_base_flow); in emac_ndo_open()