RDMA/ocrdma: Change macros to inline funtions
Signed-off-by: Naresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
This commit is contained in:
Родитель
f6ddcf7107
Коммит
df176ea074
|
@ -290,10 +290,6 @@ struct ocrdma_qp {
|
|||
u8 *ird_q_va;
|
||||
};
|
||||
|
||||
#define OCRDMA_GET_NUM_POSTED_SHIFT_VAL(qp) \
|
||||
(((qp->dev->nic_info.dev_family == OCRDMA_GEN2_FAMILY) && \
|
||||
(qp->id < 64)) ? 24 : 16)
|
||||
|
||||
struct ocrdma_hw_mr {
|
||||
struct ocrdma_dev *dev;
|
||||
u32 lkey;
|
||||
|
@ -384,4 +380,43 @@ static inline struct ocrdma_srq *get_ocrdma_srq(struct ib_srq *ibsrq)
|
|||
return container_of(ibsrq, struct ocrdma_srq, ibsrq);
|
||||
}
|
||||
|
||||
|
||||
static inline int ocrdma_get_num_posted_shift(struct ocrdma_qp *qp)
|
||||
{
|
||||
return ((qp->dev->nic_info.dev_family == OCRDMA_GEN2_FAMILY &&
|
||||
qp->id < 64) ? 24 : 16);
|
||||
}
|
||||
|
||||
static inline int is_cqe_valid(struct ocrdma_cq *cq, struct ocrdma_cqe *cqe)
|
||||
{
|
||||
int cqe_valid;
|
||||
cqe_valid = le32_to_cpu(cqe->flags_status_srcqpn) & OCRDMA_CQE_VALID;
|
||||
return ((cqe_valid == cq->phase) ? 1 : 0);
|
||||
}
|
||||
|
||||
static inline int is_cqe_for_sq(struct ocrdma_cqe *cqe)
|
||||
{
|
||||
return (le32_to_cpu(cqe->flags_status_srcqpn) &
|
||||
OCRDMA_CQE_QTYPE) ? 0 : 1;
|
||||
}
|
||||
|
||||
static inline int is_cqe_invalidated(struct ocrdma_cqe *cqe)
|
||||
{
|
||||
return (le32_to_cpu(cqe->flags_status_srcqpn) &
|
||||
OCRDMA_CQE_INVALIDATE) ? 1 : 0;
|
||||
}
|
||||
|
||||
static inline int is_cqe_imm(struct ocrdma_cqe *cqe)
|
||||
{
|
||||
return (le32_to_cpu(cqe->flags_status_srcqpn) &
|
||||
OCRDMA_CQE_IMM) ? 1 : 0;
|
||||
}
|
||||
|
||||
static inline int is_cqe_wr_imm(struct ocrdma_cqe *cqe)
|
||||
{
|
||||
return (le32_to_cpu(cqe->flags_status_srcqpn) &
|
||||
OCRDMA_CQE_WRITE_IMM) ? 1 : 0;
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1534,21 +1534,6 @@ struct ocrdma_cqe {
|
|||
u32 flags_status_srcqpn; /* w3 */
|
||||
} __packed;
|
||||
|
||||
#define is_cqe_valid(cq, cqe) \
|
||||
(((le32_to_cpu(cqe->flags_status_srcqpn) & OCRDMA_CQE_VALID)\
|
||||
== cq->phase) ? 1 : 0)
|
||||
#define is_cqe_for_sq(cqe) \
|
||||
((le32_to_cpu(cqe->flags_status_srcqpn) & OCRDMA_CQE_QTYPE) ? 0 : 1)
|
||||
#define is_cqe_for_rq(cqe) \
|
||||
((le32_to_cpu(cqe->flags_status_srcqpn) & OCRDMA_CQE_QTYPE) ? 1 : 0)
|
||||
#define is_cqe_invalidated(cqe) \
|
||||
((le32_to_cpu(cqe->flags_status_srcqpn) & OCRDMA_CQE_INVALIDATE) ? \
|
||||
1 : 0)
|
||||
#define is_cqe_imm(cqe) \
|
||||
((le32_to_cpu(cqe->flags_status_srcqpn) & OCRDMA_CQE_IMM) ? 1 : 0)
|
||||
#define is_cqe_wr_imm(cqe) \
|
||||
((le32_to_cpu(cqe->flags_status_srcqpn) & OCRDMA_CQE_WRITE_IMM) ? 1 : 0)
|
||||
|
||||
struct ocrdma_sge {
|
||||
u32 addr_hi;
|
||||
u32 addr_lo;
|
||||
|
|
|
@ -1819,7 +1819,7 @@ int ocrdma_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr,
|
|||
|
||||
static void ocrdma_ring_rq_db(struct ocrdma_qp *qp)
|
||||
{
|
||||
u32 val = qp->rq.dbid | (1 << OCRDMA_GET_NUM_POSTED_SHIFT_VAL(qp));
|
||||
u32 val = qp->rq.dbid | (1 << ocrdma_get_num_posted_shift(qp));
|
||||
|
||||
iowrite32(val, qp->rq_db);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче