#ifndef __OCRDMA_H__
#define __OCRDMA_H__
#include <linux/mutex.h>
#include <linux/list.h>
#include <linux/spinlock.h>
#include <linux/pci.h>
#include <rdma/ib_verbs.h>
#include <rdma/ib_user_verbs.h>
#include <rdma/ib_addr.h>
#include <be_roce.h>
#include "ocrdma_sli.h"
#define OCRDMA_ROCE_DRV_VERSION …
#define OCRDMA_ROCE_DRV_DESC …
#define OCRDMA_NODE_DESC …
#define OC_NAME_SH …
#define OC_NAME_UNKNOWN …
#define OC_SKH_DEVICE_PF …
#define OC_SKH_DEVICE_VF …
#define OCRDMA_MAX_AH …
#define OCRDMA_UVERBS(CMD_NAME) …
#define convert_to_64bit(lo, hi) …
#define EQ_INTR_PER_SEC_THRSH_HI …
#define EQ_INTR_PER_SEC_THRSH_LOW …
#define EQ_AIC_MAX_EQD …
#define EQ_AIC_MIN_EQD …
void ocrdma_eqd_set_task(struct work_struct *work);
struct ocrdma_dev_attr { … };
struct ocrdma_dma_mem { … };
struct ocrdma_pbl { … };
struct ocrdma_queue_info { … };
struct ocrdma_aic_obj { … };
struct ocrdma_eq { … };
struct ocrdma_mq { … };
struct mqe_ctx { … };
struct ocrdma_hw_mr { … };
struct ocrdma_mr { … };
struct ocrdma_stats { … };
struct ocrdma_pd_resource_mgr { … };
struct stats_mem { … };
struct phy_info { … };
enum ocrdma_flags { … };
struct ocrdma_dev { … };
struct ocrdma_cq { … };
struct ocrdma_pd { … };
struct ocrdma_ah { … };
struct ocrdma_qp_hwq_info { … };
struct ocrdma_srq { … };
struct ocrdma_qp { … };
struct ocrdma_ucontext { … };
struct ocrdma_mm { … };
static inline struct ocrdma_dev *get_ocrdma_dev(struct ib_device *ibdev)
{ … }
static inline struct ocrdma_ucontext *get_ocrdma_ucontext(struct ib_ucontext
*ibucontext)
{ … }
static inline struct ocrdma_pd *get_ocrdma_pd(struct ib_pd *ibpd)
{ … }
static inline struct ocrdma_cq *get_ocrdma_cq(struct ib_cq *ibcq)
{ … }
static inline struct ocrdma_qp *get_ocrdma_qp(struct ib_qp *ibqp)
{ … }
static inline struct ocrdma_mr *get_ocrdma_mr(struct ib_mr *ibmr)
{ … }
static inline struct ocrdma_ah *get_ocrdma_ah(struct ib_ah *ibah)
{ … }
static inline struct ocrdma_srq *get_ocrdma_srq(struct ib_srq *ibsrq)
{ … }
static inline int is_cqe_valid(struct ocrdma_cq *cq, struct ocrdma_cqe *cqe)
{ … }
static inline int is_cqe_for_sq(struct ocrdma_cqe *cqe)
{ … }
static inline int is_cqe_invalidated(struct ocrdma_cqe *cqe)
{ … }
static inline int is_cqe_imm(struct ocrdma_cqe *cqe)
{ … }
static inline int is_cqe_wr_imm(struct ocrdma_cqe *cqe)
{ … }
static inline int ocrdma_resolve_dmac(struct ocrdma_dev *dev,
struct rdma_ah_attr *ah_attr, u8 *mac_addr)
{ … }
static inline char *hca_name(struct ocrdma_dev *dev)
{ … }
static inline int ocrdma_get_eq_table_index(struct ocrdma_dev *dev,
int eqid)
{ … }
static inline u8 ocrdma_get_asic_type(struct ocrdma_dev *dev)
{ … }
static inline u8 ocrdma_get_pfc_prio(u8 *pfc, u8 prio)
{ … }
static inline u8 ocrdma_get_app_prio(u8 *app_prio, u8 prio)
{ … }
static inline u8 ocrdma_is_enabled_and_synced(u32 state)
{ … }
static inline u8 ocrdma_get_ae_link_state(u32 ae_state)
{ … }
static inline bool ocrdma_is_udp_encap_supported(struct ocrdma_dev *dev)
{ … }
#endif