From: Jacob Moroni Date: Tue, 20 Jan 2026 21:25:45 +0000 (+0000) Subject: RDMA/irdma: Add enum defs for reserved CQs/QPs X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2b7c2ba1308a545a2be2d3d041c2c1cde95b700a;p=thirdparty%2Fkernel%2Flinux.git RDMA/irdma: Add enum defs for reserved CQs/QPs Added definitions for the special reserved CQs and QPs. Signed-off-by: Jacob Moroni Link: https://patch.msgid.link/20260120212546.1893076-1-jmoroni@google.com Signed-off-by: Leon Romanovsky --- diff --git a/drivers/infiniband/hw/irdma/hw.c b/drivers/infiniband/hw/irdma/hw.c index d1fc5726b979f..5d418ef5cdcae 100644 --- a/drivers/infiniband/hw/irdma/hw.c +++ b/drivers/infiniband/hw/irdma/hw.c @@ -1532,8 +1532,8 @@ static int irdma_initialize_ilq(struct irdma_device *iwdev) int status; info.type = IRDMA_PUDA_RSRC_TYPE_ILQ; - info.cq_id = 1; - info.qp_id = 1; + info.cq_id = IRDMA_RSVD_CQ_ID_ILQ; + info.qp_id = IRDMA_RSVD_QP_ID_GSI_ILQ; info.count = 1; info.pd_id = 1; info.abi_ver = IRDMA_ABI_VER; @@ -1562,7 +1562,7 @@ static int irdma_initialize_ieq(struct irdma_device *iwdev) int status; info.type = IRDMA_PUDA_RSRC_TYPE_IEQ; - info.cq_id = 2; + info.cq_id = IRDMA_RSVD_CQ_ID_IEQ; info.qp_id = iwdev->vsi.exception_lan_q; info.count = 1; info.pd_id = 2; @@ -1868,7 +1868,7 @@ int irdma_rt_init_hw(struct irdma_device *iwdev, vsi_info.pf_data_vsi_num = iwdev->vsi_num; vsi_info.register_qset = rf->gen_ops.register_qset; vsi_info.unregister_qset = rf->gen_ops.unregister_qset; - vsi_info.exception_lan_q = 2; + vsi_info.exception_lan_q = IRDMA_RSVD_QP_ID_IEQ; irdma_sc_vsi_init(&iwdev->vsi, &vsi_info); status = irdma_setup_cm_core(iwdev, rf->rdma_ver); @@ -2099,18 +2099,18 @@ u32 irdma_initialize_hw_rsrc(struct irdma_pci_f *rf) irdma_set_hw_rsrc(rf); set_bit(0, rf->allocated_mrs); - set_bit(0, rf->allocated_qps); - set_bit(0, rf->allocated_cqs); + set_bit(IRDMA_RSVD_QP_ID_0, rf->allocated_qps); + set_bit(IRDMA_RSVD_CQ_ID_CQP, rf->allocated_cqs); set_bit(0, rf->allocated_srqs); set_bit(0, rf->allocated_pds); set_bit(0, rf->allocated_arps); set_bit(0, rf->allocated_ahs); set_bit(0, rf->allocated_mcgs); - set_bit(2, rf->allocated_qps); /* qp 2 IEQ */ - set_bit(1, rf->allocated_qps); /* qp 1 ILQ */ - set_bit(1, rf->allocated_cqs); + set_bit(IRDMA_RSVD_QP_ID_IEQ, rf->allocated_qps); + set_bit(IRDMA_RSVD_QP_ID_GSI_ILQ, rf->allocated_qps); + set_bit(IRDMA_RSVD_CQ_ID_ILQ, rf->allocated_cqs); set_bit(1, rf->allocated_pds); - set_bit(2, rf->allocated_cqs); + set_bit(IRDMA_RSVD_CQ_ID_IEQ, rf->allocated_cqs); set_bit(2, rf->allocated_pds); INIT_LIST_HEAD(&rf->mc_qht_list.list); diff --git a/drivers/infiniband/hw/irdma/type.h b/drivers/infiniband/hw/irdma/type.h index cab4896640a10..3de9240b727f6 100644 --- a/drivers/infiniband/hw/irdma/type.h +++ b/drivers/infiniband/hw/irdma/type.h @@ -239,6 +239,18 @@ enum irdma_queue_type { IRDMA_QUEUE_TYPE_SRQ, }; +enum irdma_rsvd_cq_id { + IRDMA_RSVD_CQ_ID_CQP, + IRDMA_RSVD_CQ_ID_ILQ, + IRDMA_RSVD_CQ_ID_IEQ, +}; + +enum irdma_rsvd_qp_id { + IRDMA_RSVD_QP_ID_0, + IRDMA_RSVD_QP_ID_GSI_ILQ, + IRDMA_RSVD_QP_ID_IEQ, +}; + struct irdma_sc_dev; struct irdma_vsi_pestat;