From: Leon Romanovsky [mailto:l...@kernel.org] Sent: Tuesday, June 27, 2017 8:27 AM > On Mon, Jun 26, 2017 at 09:07:05PM +0300, Michal Kalderon wrote: > > Make slight modifications to common RoCE/iWARP code. > > Add additional doorbell for iWARP post_send. > > iWARP QP pbl is allocated in qed and not in qedr. > > > > Signed-off-by: Michal Kalderon <michal.kalde...@cavium.com> > > Signed-off-by: Ram Amrani <ram.amr...@cavium.com> > > Signed-off-by: Ariel Elior <ariel.el...@cavium.com> > > > > --- > > drivers/infiniband/hw/qedr/qedr.h | 3 + > > drivers/infiniband/hw/qedr/verbs.c | 171 > +++++++++++++++++++++++++++++-------- > > 2 files changed, 139 insertions(+), 35 deletions(-) > > > > diff --git a/drivers/infiniband/hw/qedr/qedr.h > b/drivers/infiniband/hw/qedr/qedr.h > > index c52fde0..0c0a39a 100644 > > --- a/drivers/infiniband/hw/qedr/qedr.h > > +++ b/drivers/infiniband/hw/qedr/qedr.h > > @@ -319,6 +319,9 @@ struct qedr_qp_hwq_info { > > /* DB */ > > void __iomem *db; > > union db_prod32 db_data; > > + > > + void __iomem *iwarp_db2; > > + union db_prod32 iwarp_db2_data; > > Why do you need two doorbells?
This is a hw requirement to handle error state in iWARP > > };