On Mon, Oct 28, 2024 at 5:29 PM Leon Romanovsky <leon@xxxxxxxxxx> wrote: > > On Mon, Oct 14, 2024 at 10:55:58AM -0700, Selvin Xavier wrote: > > From: Kalesh AP <kalesh-anakkur.purayil@xxxxxxxxxxxx> > > > > Modify QP improvements are for state transitions > > from INIT -> RTR and RTR -> RTS. > > In order to support the Modify QP Optimization feature, > > the driver is expected to check for the feature support > > in the CMDQ_QUERY_FUNC and register its support for this > > feature with the FW in CMDQ_INITIALIZE_FIRMWARE. > > > > Additionally, the driver is required to specify the new > > fields and attribute masks for the transitions as follows: > > 1. INIT -> RTR: > > - New fields: srq_used, type. > > - enable srq_used when RC QP is configured to use SRQ. > > - set the type based on the QP type. > > - Mandatory masks: > > - RC: CMDQ_MODIFY_QP_MODIFY_MASK_ACCESS, > > CMDQ_MODIFY_QP_MODIFY_MASK_PKEY > > - UD QP and QP1: CMDQ_MODIFY_QP_MODIFY_MASK_PKEY, > > CMDQ_MODIFY_QP_MODIFY_MASK_QKEY > > 2. RTR -> RTS: > > - New fields: type > > - set the type based on the QP type. > > - Mandatory masks: > > - RC: CMDQ_MODIFY_QP_MODIFY_MASK_ACCESS > > - UD QP and QP1: CMDQ_MODIFY_QP_MODIFY_MASK_QKEY > > > > Reviewed-by: Saravanan Vajravel <saravanan.vajravel@xxxxxxxxxxxx> > > Reviewed-by: Tushar Rane <tushar.rane@xxxxxxxxxxxx> > > Signed-off-by: Kalesh AP <kalesh-anakkur.purayil@xxxxxxxxxxxx> > > Signed-off-by: Selvin Xavier <selvin.xavier@xxxxxxxxxxxx> > > --- > > drivers/infiniband/hw/bnxt_re/qplib_fp.c | 40 ++++++++++++++++++++++++++++++ > > drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 6 ++++- > > drivers/infiniband/hw/bnxt_re/qplib_res.h | 5 ++++ > > drivers/infiniband/hw/bnxt_re/roce_hsi.h | 3 +++ > > 4 files changed, 53 insertions(+), 1 deletion(-) > > <...> > > > diff --git a/drivers/infiniband/hw/bnxt_re/roce_hsi.h b/drivers/infiniband/hw/bnxt_re/roce_hsi.h > > index 3ec8952..69d50d7 100644 > > --- a/drivers/infiniband/hw/bnxt_re/roce_hsi.h > > +++ b/drivers/infiniband/hw/bnxt_re/roce_hsi.h > > @@ -216,6 +216,8 @@ struct cmdq_initialize_fw { > > __le16 flags; > > #define CMDQ_INITIALIZE_FW_FLAGS_MRAV_RESERVATION_SPLIT 0x1UL > > #define CMDQ_INITIALIZE_FW_FLAGS_HW_REQUESTER_RETX_SUPPORTED 0x2UL > > + #define CMDQ_INITIALIZE_FW_FLAGS_DRV_VERSION 0x4UL > > Where is this define used? We are not using this field now. This is structure fields are copied from an autogenerated file. Since we updated this structure, we have copied all update to that structure. The value we are currently interested in is 0x8UL. Do you want me to repost the series after removing the above define? > > > + #define CMDQ_INITIALIZE_FW_FLAGS_OPTIMIZE_MODIFY_QP_SUPPORTED 0x8UL > > Thanks
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature