Lines Matching refs:qmgr

37 static int	ixl_pf_qmgr_find_free_contiguous_block(struct ixl_pf_qmgr *qmgr, int num);
40 ixl_pf_qmgr_init(struct ixl_pf_qmgr *qmgr, u16 num_queues) in ixl_pf_qmgr_init() argument
45 qmgr->num_queues = num_queues; in ixl_pf_qmgr_init()
46 qmgr->qinfo = malloc(num_queues * sizeof(struct ixl_pf_qmgr_qinfo), in ixl_pf_qmgr_init()
48 if (qmgr->qinfo == NULL) in ixl_pf_qmgr_init()
55 ixl_pf_qmgr_alloc_contiguous(struct ixl_pf_qmgr *qmgr, u16 num, struct ixl_pf_qtag *qtag) in ixl_pf_qmgr_alloc_contiguous() argument
69 avail = ixl_pf_qmgr_get_num_free(qmgr); in ixl_pf_qmgr_alloc_contiguous()
73 block_start = ixl_pf_qmgr_find_free_contiguous_block(qmgr, alloc_size); in ixl_pf_qmgr_alloc_contiguous()
79 qmgr->qinfo[i].allocated = true; in ixl_pf_qmgr_alloc_contiguous()
82 qtag->qmgr = qmgr; in ixl_pf_qmgr_alloc_contiguous()
95 ixl_pf_qmgr_alloc_scattered(struct ixl_pf_qmgr *qmgr, u16 num, struct ixl_pf_qtag *qtag) in ixl_pf_qmgr_alloc_scattered() argument
107 avail = ixl_pf_qmgr_get_num_free(qmgr); in ixl_pf_qmgr_alloc_scattered()
112 qtag->qmgr = qmgr; in ixl_pf_qmgr_alloc_scattered()
117 for (i = 0; i < qmgr->num_queues; i++) { in ixl_pf_qmgr_alloc_scattered()
118 if (!qmgr->qinfo[i].allocated) { in ixl_pf_qmgr_alloc_scattered()
121 qmgr->qinfo[i].allocated = true; in ixl_pf_qmgr_alloc_scattered()
132 ixl_pf_qmgr_release(struct ixl_pf_qmgr *qmgr, struct ixl_pf_qtag *qtag) in ixl_pf_qmgr_release() argument
142 bzero(&qmgr->qinfo[qidx], sizeof(qmgr->qinfo[qidx])); in ixl_pf_qmgr_release()
147 bzero(&qmgr->qinfo[i], sizeof(qmgr->qinfo[qidx])); in ixl_pf_qmgr_release()
150 qtag->qmgr = NULL; in ixl_pf_qmgr_release()
155 ixl_pf_qmgr_get_num_queues(struct ixl_pf_qmgr *qmgr) in ixl_pf_qmgr_get_num_queues() argument
157 return (qmgr->num_queues); in ixl_pf_qmgr_get_num_queues()
165 ixl_pf_qmgr_get_num_free(struct ixl_pf_qmgr *qmgr) in ixl_pf_qmgr_get_num_free() argument
169 for (int i = 0; i < qmgr->num_queues; i++) { in ixl_pf_qmgr_get_num_free()
170 if (!qmgr->qinfo[i].allocated) in ixl_pf_qmgr_get_num_free()
178 ixl_pf_qmgr_get_first_free(struct ixl_pf_qmgr *qmgr, u16 start) in ixl_pf_qmgr_get_first_free() argument
182 if (start > qmgr->num_queues - 1) in ixl_pf_qmgr_get_first_free()
185 for (i = start; i < qmgr->num_queues; i++) { in ixl_pf_qmgr_get_first_free()
186 if (qmgr->qinfo[i].allocated) in ixl_pf_qmgr_get_first_free()
197 ixl_pf_qmgr_destroy(struct ixl_pf_qmgr *qmgr) in ixl_pf_qmgr_destroy() argument
199 free(qmgr->qinfo, M_IXL); in ixl_pf_qmgr_destroy()
200 qmgr->qinfo = NULL; in ixl_pf_qmgr_destroy()
208 struct ixl_pf_qmgr *qmgr = qtag->qmgr; in ixl_pf_qmgr_mark_queue_enabled() local
211 qmgr->qinfo[pf_qidx].tx_enabled = true; in ixl_pf_qmgr_mark_queue_enabled()
213 qmgr->qinfo[pf_qidx].rx_enabled = true; in ixl_pf_qmgr_mark_queue_enabled()
221 struct ixl_pf_qmgr *qmgr = qtag->qmgr; in ixl_pf_qmgr_mark_queue_disabled() local
224 qmgr->qinfo[pf_qidx].tx_enabled = false; in ixl_pf_qmgr_mark_queue_disabled()
226 qmgr->qinfo[pf_qidx].rx_enabled = false; in ixl_pf_qmgr_mark_queue_disabled()
234 struct ixl_pf_qmgr *qmgr = qtag->qmgr; in ixl_pf_qmgr_mark_queue_configured() local
237 qmgr->qinfo[pf_qidx].tx_configured = true; in ixl_pf_qmgr_mark_queue_configured()
239 qmgr->qinfo[pf_qidx].rx_configured = true; in ixl_pf_qmgr_mark_queue_configured()
247 struct ixl_pf_qmgr *qmgr = qtag->qmgr; in ixl_pf_qmgr_is_queue_enabled() local
250 return (qmgr->qinfo[pf_qidx].tx_enabled); in ixl_pf_qmgr_is_queue_enabled()
252 return (qmgr->qinfo[pf_qidx].rx_enabled); in ixl_pf_qmgr_is_queue_enabled()
260 struct ixl_pf_qmgr *qmgr = qtag->qmgr; in ixl_pf_qmgr_is_queue_configured() local
263 return (qmgr->qinfo[pf_qidx].tx_configured); in ixl_pf_qmgr_is_queue_configured()
265 return (qmgr->qinfo[pf_qidx].rx_configured); in ixl_pf_qmgr_is_queue_configured()
273 struct ixl_pf_qmgr *qmgr = qtag->qmgr; in ixl_pf_qmgr_clear_queue_flags() local
277 qmgr->qinfo[pf_qidx].tx_configured = 0; in ixl_pf_qmgr_clear_queue_flags()
278 qmgr->qinfo[pf_qidx].rx_configured = 0; in ixl_pf_qmgr_clear_queue_flags()
279 qmgr->qinfo[pf_qidx].rx_enabled = 0; in ixl_pf_qmgr_clear_queue_flags()
280 qmgr->qinfo[pf_qidx].tx_enabled = 0; in ixl_pf_qmgr_clear_queue_flags()
298 ixl_pf_qmgr_find_free_contiguous_block(struct ixl_pf_qmgr *qmgr, int num) in ixl_pf_qmgr_find_free_contiguous_block() argument
305 for (i = 0; i < qmgr->num_queues; i++) { in ixl_pf_qmgr_find_free_contiguous_block()
306 if (!qmgr->qinfo[i].allocated) { in ixl_pf_qmgr_find_free_contiguous_block()