From eacbff0c48cca4b6d87145609742adc7e7295450 Mon Sep 17 00:00:00 2001 From: Qi Xu Date: Tue, 9 Jan 2024 16:57:08 +0800 Subject: [PATCH] hns3 udma: add support of DWQE in create qp driver inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I8UNF9 CVE: NA ------------------------------------------ This patch fix bug of not adding capability of DWQE while creating qp. DWQE is a way that can reduce latency. Fixes: 40b935d3657c ("hns3 udma: support create tp") Signed-off-by: Qi Xu --- drivers/ub/hw/hns3/hns3_udma_qp.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/ub/hw/hns3/hns3_udma_qp.c b/drivers/ub/hw/hns3/hns3_udma_qp.c index 566bfad7575d..fff196e85838 100644 --- a/drivers/ub/hw/hns3/hns3_udma_qp.c +++ b/drivers/ub/hw/hns3/hns3_udma_qp.c @@ -1856,6 +1856,9 @@ static int udma_alloc_qp_sq(struct udma_dev *udma_dev, struct udma_qp *qp, qp->dca_ctx = &qp_attr->jetty->rc_node.context->dca_ctx; if (qp_attr->jetty->rc_node.buf_addr) { qp->mtr = qp_attr->jetty->rc_node.mtr; + if ((PAGE_SIZE <= UDMA_DWQE_SIZE) && + (udma_dev->caps.flags & UDMA_CAP_FLAG_DIRECT_WQE)) + qp->en_flags |= UDMA_QP_CAP_DIRECT_WQE; } else { ret = alloc_qp_wqe(udma_dev, qp, qp_attr->jetty->rc_node.buf_addr); if (ret) -- Gitee