Lines Matching refs:fq
141 static void caam_fq_ern_cb(struct qman_portal *qm, struct qman_fq *fq, in caam_fq_ern_cb() argument
222 static int empty_retired_fq(struct device *qidev, struct qman_fq *fq) in empty_retired_fq() argument
226 ret = qman_volatile_dequeue(fq, QMAN_VOLATILE_FLAG_WAIT_INT | in empty_retired_fq()
231 dev_err(qidev, "Volatile dequeue fail for FQ: %u\n", fq->fqid); in empty_retired_fq()
240 } while (fq->flags & QMAN_FQ_STATE_NE); in empty_retired_fq()
245 static int kill_fq(struct device *qidev, struct qman_fq *fq) in kill_fq() argument
250 ret = qman_retire_fq(fq, &flags); in kill_fq()
264 } while (fq->state != qman_fq_state_retired); in kill_fq()
266 WARN_ON(fq->flags & QMAN_FQ_STATE_BLOCKOOS); in kill_fq()
267 WARN_ON(fq->flags & QMAN_FQ_STATE_ORL); in kill_fq()
271 if (fq->flags & QMAN_FQ_STATE_NE) { in kill_fq()
272 ret = empty_retired_fq(qidev, fq); in kill_fq()
275 fq->fqid); in kill_fq()
280 ret = qman_oos_fq(fq); in kill_fq()
282 dev_err(qidev, "OOS of FQID: %u failed\n", fq->fqid); in kill_fq()
284 qman_destroy_fq(fq); in kill_fq()
285 kfree(fq); in kill_fq()
290 static int empty_caam_fq(struct qman_fq *fq) in empty_caam_fq() argument
297 ret = qman_query_fq_np(fq, &np); in empty_caam_fq()
607 struct qman_fq *fq; in alloc_rsp_fq_cpu() local
610 fq = kzalloc(sizeof(*fq), GFP_KERNEL | GFP_DMA); in alloc_rsp_fq_cpu()
611 if (!fq) in alloc_rsp_fq_cpu()
614 fq->cb.dqrr = caam_rsp_fq_dqrr_cb; in alloc_rsp_fq_cpu()
617 QMAN_FQ_FLAG_DYNAMIC_FQID, fq); in alloc_rsp_fq_cpu()
620 kfree(fq); in alloc_rsp_fq_cpu()
636 ret = qman_init_fq(fq, QMAN_INITFQ_FLAG_SCHED, &opts); in alloc_rsp_fq_cpu()
639 kfree(fq); in alloc_rsp_fq_cpu()
643 per_cpu(pcpu_qipriv.rsp_fq, cpu) = fq; in alloc_rsp_fq_cpu()
645 dev_dbg(qidev, "Allocated response FQ %u for CPU %u", fq->fqid, cpu); in alloc_rsp_fq_cpu()