On Wed, Nov 01, 2017 at 06:00:39PM +0800, Lijun Ou wrote: > The cmd_sn field of CQ doorbell should be 1 for the first > db rung. It inits for 0. It should be increment on each > first db rung after a complemention Event. > > Signed-off-by: Lijun Ou <oulijun@xxxxxxxxxx> > --- > providers/hns/hns_roce_u_hw_v2.c | 4 +++- > providers/hns/hns_roce_u_hw_v2.h | 2 ++ > 2 files changed, 5 insertions(+), 1 deletion(-) > > diff --git a/providers/hns/hns_roce_u_hw_v2.c b/providers/hns/hns_roce_u_hw_v2.c > index 900387c..7777e75 100644 > --- a/providers/hns/hns_roce_u_hw_v2.c > +++ b/providers/hns/hns_roce_u_hw_v2.c > @@ -444,11 +444,13 @@ static int hns_roce_u_v2_poll_cq(struct ibv_cq *ibvcq, int ne, > static int hns_roce_u_v2_arm_cq(struct ibv_cq *ibvcq, int solicited) > { > uint32_t ci; > + uint32_t cmd_sn; > uint32_t solicited_flag; > struct hns_roce_v2_cq_db cq_db; > struct hns_roce_cq *cq = to_hr_cq(ibvcq); > > ci = cq->cons_index & ((cq->cq_depth << 1) - 1); > + cmd_sn = cq->arm_sn & HNS_ROCE_CMDSN_MASK; I didn't understand it from you commit message, so I'll ask it here. cmd_en will be 1,2 and 3 now, is it ok? Thanks > solicited_flag = solicited ? HNS_ROCE_V2_CQ_DB_REQ_SOL : > HNS_ROCE_V2_CQ_DB_REQ_NEXT; > > @@ -462,7 +464,7 @@ static int hns_roce_u_v2_arm_cq(struct ibv_cq *ibvcq, int solicited) > CQ_DB_PARAMETER_CQ_CONSUMER_IDX_S, ci); > > roce_set_field(cq_db.parameter, CQ_DB_PARAMETER_CMD_SN_M, > - CQ_DB_PARAMETER_CMD_SN_S, 1); > + CQ_DB_PARAMETER_CMD_SN_S, cmd_sn); > roce_set_bit(cq_db.parameter, CQ_DB_PARAMETER_NOTIFY_S, solicited_flag); > > hns_roce_write64((uint32_t *)&cq_db, to_hr_ctx(ibvcq->context), > diff --git a/providers/hns/hns_roce_u_hw_v2.h b/providers/hns/hns_roce_u_hw_v2.h > index 28aab60..196ba4e 100644 > --- a/providers/hns/hns_roce_u_hw_v2.h > +++ b/providers/hns/hns_roce_u_hw_v2.h > @@ -38,6 +38,8 @@ > #define HNS_ROCE_V2_CQ_DB_REQ_SOL 1 > #define HNS_ROCE_V2_CQ_DB_REQ_NEXT 0 > > +#define HNS_ROCE_CMDSN_MASK 0x3 > + > /* V2 REG DEFINITION */ > #define ROCEE_VF_DB_CFG0_OFFSET 0x0230 > > -- > 1.9.1 >
Attachment:
signature.asc
Description: PGP signature