Lines Matching refs:qs_cfg

27 static int __ice_vsi_get_qs_contig(struct ice_qs_cfg *qs_cfg)  in __ice_vsi_get_qs_contig()  argument
31 mutex_lock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_contig()
32 offset = bitmap_find_next_zero_area(qs_cfg->pf_map, qs_cfg->pf_map_size, in __ice_vsi_get_qs_contig()
33 0, qs_cfg->q_count, 0); in __ice_vsi_get_qs_contig()
34 if (offset >= qs_cfg->pf_map_size) { in __ice_vsi_get_qs_contig()
35 mutex_unlock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_contig()
39 bitmap_set(qs_cfg->pf_map, offset, qs_cfg->q_count); in __ice_vsi_get_qs_contig()
40 for (i = 0; i < qs_cfg->q_count; i++) in __ice_vsi_get_qs_contig()
41 qs_cfg->vsi_map[i + qs_cfg->vsi_map_offset] = (u16)(i + offset); in __ice_vsi_get_qs_contig()
42 mutex_unlock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_contig()
53 static int __ice_vsi_get_qs_sc(struct ice_qs_cfg *qs_cfg) in __ice_vsi_get_qs_sc() argument
57 mutex_lock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_sc()
58 for (i = 0; i < qs_cfg->q_count; i++) { in __ice_vsi_get_qs_sc()
59 index = find_next_zero_bit(qs_cfg->pf_map, in __ice_vsi_get_qs_sc()
60 qs_cfg->pf_map_size, index); in __ice_vsi_get_qs_sc()
61 if (index >= qs_cfg->pf_map_size) in __ice_vsi_get_qs_sc()
63 set_bit(index, qs_cfg->pf_map); in __ice_vsi_get_qs_sc()
64 qs_cfg->vsi_map[i + qs_cfg->vsi_map_offset] = (u16)index; in __ice_vsi_get_qs_sc()
66 mutex_unlock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_sc()
71 clear_bit(qs_cfg->vsi_map[index], qs_cfg->pf_map); in __ice_vsi_get_qs_sc()
72 qs_cfg->vsi_map[index + qs_cfg->vsi_map_offset] = 0; in __ice_vsi_get_qs_sc()
74 mutex_unlock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_sc()
585 int __ice_vsi_get_qs(struct ice_qs_cfg *qs_cfg) in __ice_vsi_get_qs() argument
589 ret = __ice_vsi_get_qs_contig(qs_cfg); in __ice_vsi_get_qs()
592 qs_cfg->mapping_mode = ICE_VSI_MAP_SCATTER; in __ice_vsi_get_qs()
593 qs_cfg->q_count = min_t(unsigned int, qs_cfg->q_count, in __ice_vsi_get_qs()
594 qs_cfg->scatter_count); in __ice_vsi_get_qs()
595 ret = __ice_vsi_get_qs_sc(qs_cfg); in __ice_vsi_get_qs()