Acked-by: Faisal Latif <[EMAIL PROTECTED]>

Thanks
Faisal

> -----Original Message-----
> From: Roland Dreier [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, July 02, 2008 4:01 PM
> To: Faisal Latif; Chien Tung; Glenn Streiff
> Cc: [email protected]
> Subject: [PATCH] RDMA/nes: Get rid of ring_doorbell parameter of
> nes_post_cqp_request()
> 
> Every caller of nes_post_cqp_request() passed it
> NES_CQP_REQUEST_RING_DOORBELL,
> so just remove that parameter and always ring the doorbell.
> 
> Signed-off-by: Roland Dreier <[EMAIL PROTECTED]>
> ---
> And one more...
> 
>  drivers/infiniband/hw/nes/nes.c       |    2 +-
>  drivers/infiniband/hw/nes/nes.h       |    5 +----
>  drivers/infiniband/hw/nes/nes_hw.c    |    6 +++---
>  drivers/infiniband/hw/nes/nes_utils.c |    9 ++++-----
>  drivers/infiniband/hw/nes/nes_verbs.c |   18 +++++++++---------
>  5 files changed, 18 insertions(+), 22 deletions(-)
> 
> diff --git a/drivers/infiniband/hw/nes/nes.c
> b/drivers/infiniband/hw/nes/nes.c
> index a4e9269..d2884e7 100644
> --- a/drivers/infiniband/hw/nes/nes.c
> +++ b/drivers/infiniband/hw/nes/nes.c
> @@ -328,7 +328,7 @@ void nes_rem_ref(struct ib_qp *ibqp)
>               set_wqe_32bit_value(cqp_wqe->wqe_words,
NES_CQP_WQE_ID_IDX,
> nesqp->hwqp.qp_id);
>               u64temp = (u64)nesqp->nesqp_context_pbase;
>               set_wqe_64bit_value(cqp_wqe->wqe_words,
> NES_CQP_QP_WQE_CONTEXT_LOW_IDX, u64temp);
> -             nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +             nes_post_cqp_request(nesdev, cqp_request);
>       }
>  }
> 
> diff --git a/drivers/infiniband/hw/nes/nes.h
> b/drivers/infiniband/hw/nes/nes.h
> index fe88bec..39bd897 100644
> --- a/drivers/infiniband/hw/nes/nes.h
> +++ b/drivers/infiniband/hw/nes/nes.h
> @@ -94,9 +94,6 @@
> 
>  #define MAX_DPC_ITERATIONS               128
> 
> -#define NES_CQP_REQUEST_NO_DOORBELL_RING 0
> -#define NES_CQP_REQUEST_RING_DOORBELL    1
> -
>  #define NES_DRV_OPT_ENABLE_MPA_VER_0     0x00000001
>  #define NES_DRV_OPT_DISABLE_MPA_CRC      0x00000002
>  #define NES_DRV_OPT_DISABLE_FIRST_WRITE  0x00000004
> @@ -542,7 +539,7 @@ void nes_free_cqp_request(struct nes_device
> *nesdev,
>                         struct nes_cqp_request *cqp_request);
>  void nes_put_cqp_request(struct nes_device *nesdev,
>                        struct nes_cqp_request *cqp_request);
> -void nes_post_cqp_request(struct nes_device *, struct nes_cqp_request
> *, int);
> +void nes_post_cqp_request(struct nes_device *, struct nes_cqp_request
> *);
>  int nes_arp_table(struct nes_device *, u32, u8 *, u32);
>  void nes_mh_fix(unsigned long);
>  void nes_clc(unsigned long);
> diff --git a/drivers/infiniband/hw/nes/nes_hw.c
> b/drivers/infiniband/hw/nes/nes_hw.c
> index 0cea58b..59c2841 100644
> --- a/drivers/infiniband/hw/nes/nes_hw.c
> +++ b/drivers/infiniband/hw/nes/nes_hw.c
> @@ -3145,7 +3145,7 @@ int nes_manage_apbvt(struct nes_vnic *nesvnic,
> u32 accel_local_port,
>       nes_debug(NES_DBG_QP, "Waiting for CQP completion for
APBVT.\n");
> 
>       atomic_set(&cqp_request->refcount, 2);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       if (add_port == NES_MANAGE_APBVT_ADD)
>               ret = wait_event_timeout(cqp_request->waitq,
(cqp_request-
> >request_done != 0),
> @@ -3215,7 +3215,7 @@ void nes_manage_arp_cache(struct net_device
> *netdev, unsigned char *mac_addr,
>                       nesdev->cqp.sq_head, nesdev->cqp.sq_tail);
> 
>       atomic_set(&cqp_request->refcount, 1);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
>  }
> 
> 
> @@ -3247,7 +3247,7 @@ void flush_wqes(struct nes_device *nesdev,
struct
> nes_qp *nesqp,
>                       cpu_to_le32(NES_CQP_FLUSH_WQES | which_wq);
>       cqp_wqe->wqe_words[NES_CQP_WQE_ID_IDX] = cpu_to_le32(nesqp-
> >hwqp.qp_id);
> 
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       if (wait_completion) {
>               /* Wait for CQP */
> diff --git a/drivers/infiniband/hw/nes/nes_utils.c
> b/drivers/infiniband/hw/nes/nes_utils.c
> index 8f519c8..fb8cbd7 100644
> --- a/drivers/infiniband/hw/nes/nes_utils.c
> +++ b/drivers/infiniband/hw/nes/nes_utils.c
> @@ -596,7 +596,7 @@ void nes_put_cqp_request(struct nes_device
*nesdev,
>   * nes_post_cqp_request
>   */
>  void nes_post_cqp_request(struct nes_device *nesdev,
> -             struct nes_cqp_request *cqp_request, int ring_doorbell)
> +                       struct nes_cqp_request *cqp_request)
>  {
>       struct nes_hw_cqp_wqe *cqp_wqe;
>       unsigned long flags;
> @@ -624,10 +624,9 @@ void nes_post_cqp_request(struct nes_device
> *nesdev,
>                               nesdev->cqp.sq_head,
nesdev->cqp.sq_tail,
> nesdev->cqp.sq_size,
>                               cqp_request->waiting,
atomic_read(&cqp_request-
> >refcount));
>               barrier();
> -             if (ring_doorbell) {
> -                     /* Ring doorbell (1 WQEs) */
> -                     nes_write32(nesdev->regs+NES_WQE_ALLOC,
0x01800000 |
> nesdev->cqp.qp_id);
> -             }
> +
> +             /* Ring doorbell (1 WQEs) */
> +             nes_write32(nesdev->regs+NES_WQE_ALLOC, 0x01800000 |
> nesdev->cqp.qp_id);
> 
>               barrier();
>       } else {
> diff --git a/drivers/infiniband/hw/nes/nes_verbs.c
> b/drivers/infiniband/hw/nes/nes_verbs.c
> index 464a98a..e3939d1 100644
> --- a/drivers/infiniband/hw/nes/nes_verbs.c
> +++ b/drivers/infiniband/hw/nes/nes_verbs.c
> @@ -118,7 +118,7 @@ static struct ib_mw *nes_alloc_mw(struct ib_pd
> *ibpd) {
>       set_wqe_32bit_value(cqp_wqe->wqe_words,
> NES_CQP_STAG_WQE_STAG_IDX, stag);
> 
>       atomic_set(&cqp_request->refcount, 2);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       /* Wait for CQP */
>       ret = wait_event_timeout(cqp_request->waitq, (cqp_request-
> >request_done != 0),
> @@ -175,7 +175,7 @@ static int nes_dealloc_mw(struct ib_mw *ibmw)
>       set_wqe_32bit_value(cqp_wqe->wqe_words,
> NES_CQP_STAG_WQE_STAG_IDX, ibmw->rkey);
> 
>       atomic_set(&cqp_request->refcount, 2);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       /* Wait for CQP */
>       nes_debug(NES_DBG_MR, "Waiting for deallocate STag 0x%08X to
> complete.\n",
> @@ -477,7 +477,7 @@ static struct ib_fmr *nes_alloc_fmr(struct ib_pd
> *ibpd,
>                       (nesfmr->nesmr.pbls_used-1) : nesfmr-
> >nesmr.pbls_used);
> 
>       atomic_set(&cqp_request->refcount, 2);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       /* Wait for CQP */
>       ret = wait_event_timeout(cqp_request->waitq, (cqp_request-
> >request_done != 0),
> @@ -1417,7 +1417,7 @@ static struct ib_qp *nes_create_qp(struct ib_pd
> *ibpd,
>                       set_wqe_64bit_value(cqp_wqe->wqe_words,
> NES_CQP_QP_WQE_CONTEXT_LOW_IDX, u64temp);
> 
>                       atomic_set(&cqp_request->refcount, 2);
> -                     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +                     nes_post_cqp_request(nesdev, cqp_request);
> 
>                       /* Wait for CQP */
>                       nes_debug(NES_DBG_QP, "Waiting for create iWARP
QP%u
> to complete.\n",
> @@ -1744,7 +1744,7 @@ static struct ib_cq *nes_create_cq(struct
> ib_device *ibdev, int entries,
>                       cpu_to_le32(((u32)((u64temp) >> 33)) &
0x7FFFFFFF);
> 
>       atomic_set(&cqp_request->refcount, 2);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       /* Wait for CQP */
>       nes_debug(NES_DBG_CQ, "Waiting for create iWARP CQ%u to
> complete.\n",
> @@ -1841,7 +1841,7 @@ static int nes_destroy_cq(struct ib_cq *ib_cq)
>               (nescq->hw_cq.cq_number | ((u32)PCI_FUNC(nesdev->pcidev-
> >devfn) << 16)));
>       nes_free_resource(nesadapter, nesadapter->allocated_cqs, nescq-
> >hw_cq.cq_number);
>       atomic_set(&cqp_request->refcount, 2);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       /* Wait for CQP */
>       nes_debug(NES_DBG_CQ, "Waiting for destroy iWARP CQ%u to
> complete.\n",
> @@ -1987,7 +1987,7 @@ static int nes_reg_mr(struct nes_device *nesdev,
> struct nes_pd *nespd,
>       barrier();
> 
>       atomic_set(&cqp_request->refcount, 2);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       /* Wait for CQP */
>       ret = wait_event_timeout(cqp_request->waitq, (0 != cqp_request-
> >request_done),
> @@ -2638,7 +2638,7 @@ static int nes_dereg_mr(struct ib_mr *ib_mr)
>       set_wqe_32bit_value(cqp_wqe->wqe_words,
> NES_CQP_STAG_WQE_STAG_IDX, ib_mr->rkey);
> 
>       atomic_set(&cqp_request->refcount, 2);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       /* Wait for CQP */
>       nes_debug(NES_DBG_MR, "Waiting for deallocate STag 0x%08X
> completed\n", ib_mr->rkey);
> @@ -2809,7 +2809,7 @@ int nes_hw_modify_qp(struct nes_device *nesdev,
> struct nes_qp *nesqp,
>       set_wqe_64bit_value(cqp_wqe->wqe_words,
> NES_CQP_QP_WQE_CONTEXT_LOW_IDX, (u64)nesqp->nesqp_context_pbase);
> 
>       atomic_set(&cqp_request->refcount, 2);
> -     nes_post_cqp_request(nesdev, cqp_request,
> NES_CQP_REQUEST_RING_DOORBELL);
> +     nes_post_cqp_request(nesdev, cqp_request);
> 
>       /* Wait for CQP */
>       if (wait_completion) {
> --
> 1.5.6

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to