Lines Matching refs:masks
2694 for (i = hw->blk[blk].masks.first; i < hw->blk[blk].masks.first + in ice_prof_has_mask_idx()
2695 hw->blk[blk].masks.count; i++) in ice_prof_has_mask_idx()
2697 if (hw->blk[blk].masks.masks[i].in_use && in ice_prof_has_mask_idx()
2698 hw->blk[blk].masks.masks[i].idx == idx) { in ice_prof_has_mask_idx()
2700 if (hw->blk[blk].masks.masks[i].mask == mask) in ice_prof_has_mask_idx()
2724 ice_prof_has_mask(struct ice_hw *hw, enum ice_block blk, u8 prof, u16 *masks) in ice_prof_has_mask() argument
2730 if (!ice_prof_has_mask_idx(hw, blk, prof, i, masks[i])) in ice_prof_has_mask()
2746 struct ice_fv_word *fv, u16 *masks, u8 *prof_id) in ice_find_prof_id_with_mask() argument
2764 if (masks && !ice_prof_has_mask(hw, blk, i, masks)) in ice_find_prof_id_with_mask()
2996 mutex_init(&hw->blk[blk].masks.lock); in ice_init_prof_masks()
3000 hw->blk[blk].masks.count = per_pf; in ice_init_prof_masks()
3001 hw->blk[blk].masks.first = hw->pf_id * per_pf; in ice_init_prof_masks()
3003 memset(hw->blk[blk].masks.masks, 0, sizeof(hw->blk[blk].masks.masks)); in ice_init_prof_masks()
3005 for (i = hw->blk[blk].masks.first; in ice_init_prof_masks()
3006 i < hw->blk[blk].masks.first + hw->blk[blk].masks.count; i++) in ice_init_prof_masks()
3040 mutex_lock(&hw->blk[blk].masks.lock); in ice_alloc_prof_mask()
3042 for (i = hw->blk[blk].masks.first; in ice_alloc_prof_mask()
3043 i < hw->blk[blk].masks.first + hw->blk[blk].masks.count; i++) in ice_alloc_prof_mask()
3044 if (hw->blk[blk].masks.masks[i].in_use) { in ice_alloc_prof_mask()
3048 if (hw->blk[blk].masks.masks[i].mask == mask && in ice_alloc_prof_mask()
3049 hw->blk[blk].masks.masks[i].idx == idx) { in ice_alloc_prof_mask()
3073 hw->blk[blk].masks.masks[i].in_use = true; in ice_alloc_prof_mask()
3074 hw->blk[blk].masks.masks[i].mask = mask; in ice_alloc_prof_mask()
3075 hw->blk[blk].masks.masks[i].idx = idx; in ice_alloc_prof_mask()
3076 hw->blk[blk].masks.masks[i].ref = 0; in ice_alloc_prof_mask()
3080 hw->blk[blk].masks.masks[i].ref++; in ice_alloc_prof_mask()
3085 mutex_unlock(&hw->blk[blk].masks.lock); in ice_alloc_prof_mask()
3102 if (!(mask_idx >= hw->blk[blk].masks.first && in ice_free_prof_mask()
3103 mask_idx < hw->blk[blk].masks.first + hw->blk[blk].masks.count)) in ice_free_prof_mask()
3106 mutex_lock(&hw->blk[blk].masks.lock); in ice_free_prof_mask()
3108 if (!hw->blk[blk].masks.masks[mask_idx].in_use) in ice_free_prof_mask()
3111 if (hw->blk[blk].masks.masks[mask_idx].ref > 1) { in ice_free_prof_mask()
3112 hw->blk[blk].masks.masks[mask_idx].ref--; in ice_free_prof_mask()
3117 hw->blk[blk].masks.masks[mask_idx].in_use = false; in ice_free_prof_mask()
3118 hw->blk[blk].masks.masks[mask_idx].mask = 0; in ice_free_prof_mask()
3119 hw->blk[blk].masks.masks[mask_idx].idx = 0; in ice_free_prof_mask()
3127 mutex_unlock(&hw->blk[blk].masks.lock); in ice_free_prof_mask()
3166 mutex_lock(&hw->blk[blk].masks.lock); in ice_shutdown_prof_masks()
3168 for (i = hw->blk[blk].masks.first; in ice_shutdown_prof_masks()
3169 i < hw->blk[blk].masks.first + hw->blk[blk].masks.count; i++) { in ice_shutdown_prof_masks()
3172 hw->blk[blk].masks.masks[i].in_use = false; in ice_shutdown_prof_masks()
3173 hw->blk[blk].masks.masks[i].idx = 0; in ice_shutdown_prof_masks()
3174 hw->blk[blk].masks.masks[i].mask = 0; in ice_shutdown_prof_masks()
3177 mutex_unlock(&hw->blk[blk].masks.lock); in ice_shutdown_prof_masks()
3178 mutex_destroy(&hw->blk[blk].masks.lock); in ice_shutdown_prof_masks()
3202 u16 *masks) in ice_update_prof_masking() argument
3214 if (masks[i] && masks[i] != 0xFFFF) { in ice_update_prof_masking()
3215 if (!ice_alloc_prof_mask(hw, blk, i, masks[i], &idx)) { in ice_update_prof_masking()
4499 struct ice_fv_word *es, u16 *masks) in ice_add_prof() argument
4513 status = ice_find_prof_id_with_mask(hw, blk, es, masks, &prof_id); in ice_add_prof()
4531 status = ice_update_prof_masking(hw, blk, prof_id, masks); in ice_add_prof()