mirror of https://gitee.com/openkylin/linux.git
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:
parent
f6ddcf7107
commit
df176ea074
|
@ -290,10 +290,6 @@ struct ocrdma_qp {
|
||||||
u8 *ird_q_va;
|
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_hw_mr {
|
||||||
struct ocrdma_dev *dev;
|
struct ocrdma_dev *dev;
|
||||||
u32 lkey;
|
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);
|
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
|
#endif
|
||||||
|
|
|
@ -1534,21 +1534,6 @@ struct ocrdma_cqe {
|
||||||
u32 flags_status_srcqpn; /* w3 */
|
u32 flags_status_srcqpn; /* w3 */
|
||||||
} __packed;
|
} __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 {
|
struct ocrdma_sge {
|
||||||
u32 addr_hi;
|
u32 addr_hi;
|
||||||
u32 addr_lo;
|
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)
|
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);
|
iowrite32(val, qp->rq_db);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue