RDMA/hns: Ownerbit mode add control field
authorLang Cheng <chenglang@huawei.com>
Sat, 21 Aug 2021 09:53:27 +0000 (17:53 +0800)
committerJason Gunthorpe <jgg@nvidia.com>
Mon, 23 Aug 2021 16:45:12 +0000 (13:45 -0300)
The ownerbit mode is for external card mode. Make it controlled by the
firmware.

Fixes: aba457ca890c ("RDMA/hns: Support owner mode doorbell")
Link: https://lore.kernel.org/r/1629539607-33217-4-git-send-email-liangwenpeng@huawei.com
Signed-off-by: Lang Cheng <chenglang@huawei.com>
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/hns/hns_roce_hw_v2.c

index 5d594c0..d00be78 100644 (file)
@@ -4108,6 +4108,9 @@ static void modify_qp_reset_to_init(struct ib_qp *ibqp,
        if (hr_qp->en_flags & HNS_ROCE_QP_CAP_RQ_RECORD_DB)
                hr_reg_enable(context, QPC_RQ_RECORD_EN);
 
+       if (hr_qp->en_flags & HNS_ROCE_QP_CAP_OWNER_DB)
+               hr_reg_enable(context, QPC_OWNER_MODE);
+
        hr_reg_write(context, QPC_RQ_DB_RECORD_ADDR_L,
                     lower_32_bits(hr_qp->rdb.dma) >> 1);
        hr_reg_write(context, QPC_RQ_DB_RECORD_ADDR_H,