Lines Matching refs:prof

397 	struct ice_flow_prof *prof;  member
451 struct ice_flow_prof *prof; in ice_flow_proc_seg_hdrs() local
457 prof = params->prof; in ice_flow_proc_seg_hdrs()
459 for (i = 0; i < params->prof->segs_cnt; i++) { in ice_flow_proc_seg_hdrs()
463 hdrs = prof->segs[i].hdrs; in ice_flow_proc_seg_hdrs()
575 flds = params->prof->segs[seg].fields; in ice_flow_xtract_fld()
650 prot_id = (params->prof->segs[seg].hdrs & in ice_flow_xtract_fld()
731 for (i = 0; i < params->prof->segs_cnt; i++) { in ice_flow_create_xtrct_seq()
732 u64 match = params->prof->segs[i].match; in ice_flow_create_xtrct_seq()
795 struct ice_flow_prof *p, *prof = NULL; in ice_flow_find_prof_conds() local
820 prof = p; in ice_flow_find_prof_conds()
826 return prof; in ice_flow_find_prof_conds()
910 struct ice_flow_prof **prof) in ice_flow_add_prof_sync() argument
916 if (!prof || (acts_cnt && !acts)) in ice_flow_add_prof_sync()
923 params->prof = (struct ice_flow_prof *) in ice_flow_add_prof_sync()
924 ice_malloc(hw, sizeof(*params->prof)); in ice_flow_add_prof_sync()
925 if (!params->prof) { in ice_flow_add_prof_sync()
937 params->prof->id = prof_id; in ice_flow_add_prof_sync()
938 params->prof->dir = dir; in ice_flow_add_prof_sync()
939 params->prof->segs_cnt = segs_cnt; in ice_flow_add_prof_sync()
945 ice_memcpy(&params->prof->segs[i], &segs[i], sizeof(*segs), in ice_flow_add_prof_sync()
962 *prof = params->prof; in ice_flow_add_prof_sync()
966 ice_free(hw, params->prof); in ice_flow_add_prof_sync()
984 struct ice_flow_prof *prof) in ice_flow_rem_prof_sync() argument
989 status = ice_rem_prof(hw, blk, prof->id); in ice_flow_rem_prof_sync()
991 LIST_DEL(&prof->l_entry); in ice_flow_rem_prof_sync()
992 ice_free(hw, prof); in ice_flow_rem_prof_sync()
1038 struct ice_flow_prof *prof, u16 vsi_handle) in ice_flow_assoc_prof() argument
1042 if (!ice_is_bit_set(prof->vsis, vsi_handle)) { in ice_flow_assoc_prof()
1046 prof->id); in ice_flow_assoc_prof()
1048 ice_set_bit(vsi_handle, prof->vsis); in ice_flow_assoc_prof()
1069 struct ice_flow_prof *prof, u16 vsi_handle) in ice_flow_disassoc_prof() argument
1073 if (ice_is_bit_set(prof->vsis, vsi_handle)) { in ice_flow_disassoc_prof()
1077 prof->id); in ice_flow_disassoc_prof()
1079 ice_clear_bit(vsi_handle, prof->vsis); in ice_flow_disassoc_prof()
1104 struct ice_flow_prof **prof) in ice_flow_add_prof() argument
1124 acts, acts_cnt, prof); in ice_flow_add_prof()
1126 LIST_ADD(&(*prof)->l_entry, &hw->fl_profs[blk]); in ice_flow_add_prof()
1142 struct ice_flow_prof *prof; in ice_flow_rem_prof() local
1147 prof = ice_flow_find_prof_id(hw, blk, prof_id); in ice_flow_rem_prof()
1148 if (!prof) { in ice_flow_rem_prof()
1154 status = ice_flow_rem_prof_sync(hw, blk, prof); in ice_flow_rem_prof()
1404 ice_get_rss_hdr_type(struct ice_flow_prof *prof) in ice_get_rss_hdr_type() argument
1408 if (prof->segs_cnt == ICE_FLOW_SEG_SINGLE) { in ice_get_rss_hdr_type()
1410 } else if (prof->segs_cnt == ICE_FLOW_SEG_MAX) { in ice_get_rss_hdr_type()
1411 if (prof->segs[ICE_RSS_OUTER_HEADERS].hdrs == ICE_FLOW_SEG_HDR_NONE) in ice_get_rss_hdr_type()
1413 if (prof->segs[ICE_RSS_OUTER_HEADERS].hdrs & ICE_FLOW_SEG_HDR_IPV4) in ice_get_rss_hdr_type()
1415 if (prof->segs[ICE_RSS_OUTER_HEADERS].hdrs & ICE_FLOW_SEG_HDR_IPV6) in ice_get_rss_hdr_type()
1431 ice_rem_rss_list(struct ice_hw *hw, u16 vsi_handle, struct ice_flow_prof *prof) in ice_rem_rss_list() argument
1440 hdr_type = ice_get_rss_hdr_type(prof); in ice_rem_rss_list()
1443 if (r->hash.hash_flds == prof->segs[prof->segs_cnt - 1].match && in ice_rem_rss_list()
1444 r->hash.addl_hdrs == prof->segs[prof->segs_cnt - 1].hdrs && in ice_rem_rss_list()
1464 ice_add_rss_list(struct ice_hw *hw, u16 vsi_handle, struct ice_flow_prof *prof) in ice_add_rss_list() argument
1469 hdr_type = ice_get_rss_hdr_type(prof); in ice_add_rss_list()
1472 if (r->hash.hash_flds == prof->segs[prof->segs_cnt - 1].match && in ice_add_rss_list()
1473 r->hash.addl_hdrs == prof->segs[prof->segs_cnt - 1].hdrs && in ice_add_rss_list()
1483 rss_cfg->hash.hash_flds = prof->segs[prof->segs_cnt - 1].match; in ice_add_rss_list()
1484 rss_cfg->hash.addl_hdrs = prof->segs[prof->segs_cnt - 1].hdrs; in ice_add_rss_list()
1486 rss_cfg->hash.symm = prof->cfg.symm; in ice_add_rss_list()
1528 struct ice_flow_prof *prof = NULL; in ice_add_rss_cfg_sync() local
1553 prof = ice_flow_find_prof_conds(hw, blk, ICE_FLOW_RX, segs, segs_cnt, in ice_add_rss_cfg_sync()
1557 if (prof) in ice_add_rss_cfg_sync()
1565 prof = ice_flow_find_prof_conds(hw, blk, ICE_FLOW_RX, segs, segs_cnt, in ice_add_rss_cfg_sync()
1567 if (prof) { in ice_add_rss_cfg_sync()
1568 status = ice_flow_disassoc_prof(hw, blk, prof, vsi_handle); in ice_add_rss_cfg_sync()
1570 ice_rem_rss_list(hw, vsi_handle, prof); in ice_add_rss_cfg_sync()
1575 if (!ice_is_any_bit_set(prof->vsis, ICE_MAX_VSI)) { in ice_add_rss_cfg_sync()
1576 status = ice_flow_rem_prof(hw, blk, prof->id); in ice_add_rss_cfg_sync()
1585 prof = ice_flow_find_prof_conds(hw, blk, ICE_FLOW_RX, segs, segs_cnt, in ice_add_rss_cfg_sync()
1588 if (prof) { in ice_add_rss_cfg_sync()
1589 status = ice_flow_assoc_prof(hw, blk, prof, vsi_handle); in ice_add_rss_cfg_sync()
1591 status = ice_add_rss_list(hw, vsi_handle, prof); in ice_add_rss_cfg_sync()
1602 segs, segs_cnt, NULL, 0, &prof); in ice_add_rss_cfg_sync()
1606 status = ice_flow_assoc_prof(hw, blk, prof, vsi_handle); in ice_add_rss_cfg_sync()
1611 ice_flow_rem_prof(hw, blk, prof->id); in ice_add_rss_cfg_sync()
1615 status = ice_add_rss_list(hw, vsi_handle, prof); in ice_add_rss_cfg_sync()
1617 prof->cfg.symm = cfg->symm; in ice_add_rss_cfg_sync()
1680 struct ice_flow_prof *prof; in ice_rem_rss_cfg_sync() local
1696 prof = ice_flow_find_prof_conds(hw, blk, ICE_FLOW_RX, segs, segs_cnt, in ice_rem_rss_cfg_sync()
1699 if (!prof) { in ice_rem_rss_cfg_sync()
1704 status = ice_flow_disassoc_prof(hw, blk, prof, vsi_handle); in ice_rem_rss_cfg_sync()
1711 ice_rem_rss_list(hw, vsi_handle, prof); in ice_rem_rss_cfg_sync()
1713 if (!ice_is_any_bit_set(prof->vsis, ICE_MAX_VSI)) in ice_rem_rss_cfg_sync()
1714 status = ice_flow_rem_prof(hw, blk, prof->id); in ice_rem_rss_cfg_sync()