#include "mana_ib.h"
void mana_ib_uncfg_vport(struct mana_ib_dev *dev, struct mana_ib_pd *pd,
u32 port)
{ … }
int mana_ib_cfg_vport(struct mana_ib_dev *dev, u32 port, struct mana_ib_pd *pd,
u32 doorbell_id)
{ … }
int mana_ib_alloc_pd(struct ib_pd *ibpd, struct ib_udata *udata)
{ … }
int mana_ib_dealloc_pd(struct ib_pd *ibpd, struct ib_udata *udata)
{ … }
static int mana_gd_destroy_doorbell_page(struct gdma_context *gc,
int doorbell_page)
{ … }
static int mana_gd_allocate_doorbell_page(struct gdma_context *gc,
int *doorbell_page)
{ … }
int mana_ib_alloc_ucontext(struct ib_ucontext *ibcontext,
struct ib_udata *udata)
{ … }
void mana_ib_dealloc_ucontext(struct ib_ucontext *ibcontext)
{ … }
int mana_ib_create_queue(struct mana_ib_dev *mdev, u64 addr, u32 size,
struct mana_ib_queue *queue)
{ … }
void mana_ib_destroy_queue(struct mana_ib_dev *mdev, struct mana_ib_queue *queue)
{ … }
static int
mana_ib_gd_first_dma_region(struct mana_ib_dev *dev,
struct gdma_context *gc,
struct gdma_create_dma_region_req *create_req,
size_t num_pages, mana_handle_t *gdma_region,
u32 expected_status)
{ … }
static int
mana_ib_gd_add_dma_region(struct mana_ib_dev *dev, struct gdma_context *gc,
struct gdma_dma_region_add_pages_req *add_req,
unsigned int num_pages, u32 expected_status)
{ … }
static int mana_ib_gd_create_dma_region(struct mana_ib_dev *dev, struct ib_umem *umem,
mana_handle_t *gdma_region, unsigned long page_sz)
{ … }
int mana_ib_create_dma_region(struct mana_ib_dev *dev, struct ib_umem *umem,
mana_handle_t *gdma_region, u64 virt)
{ … }
int mana_ib_create_zero_offset_dma_region(struct mana_ib_dev *dev, struct ib_umem *umem,
mana_handle_t *gdma_region)
{ … }
int mana_ib_gd_destroy_dma_region(struct mana_ib_dev *dev, u64 gdma_region)
{ … }
int mana_ib_mmap(struct ib_ucontext *ibcontext, struct vm_area_struct *vma)
{ … }
int mana_ib_get_port_immutable(struct ib_device *ibdev, u32 port_num,
struct ib_port_immutable *immutable)
{ … }
int mana_ib_query_device(struct ib_device *ibdev, struct ib_device_attr *props,
struct ib_udata *uhw)
{ … }
int mana_ib_query_port(struct ib_device *ibdev, u32 port,
struct ib_port_attr *props)
{ … }
enum rdma_link_layer mana_ib_get_link_layer(struct ib_device *device, u32 port_num)
{ … }
int mana_ib_query_pkey(struct ib_device *ibdev, u32 port, u16 index, u16 *pkey)
{ … }
int mana_ib_query_gid(struct ib_device *ibdev, u32 port, int index,
union ib_gid *gid)
{ … }
void mana_ib_disassociate_ucontext(struct ib_ucontext *ibcontext)
{ … }
int mana_ib_gd_query_adapter_caps(struct mana_ib_dev *dev)
{ … }
static void
mana_ib_event_handler(void *ctx, struct gdma_queue *q, struct gdma_event *event)
{ … }
int mana_ib_create_eqs(struct mana_ib_dev *mdev)
{ … }
void mana_ib_destroy_eqs(struct mana_ib_dev *mdev)
{ … }
int mana_ib_gd_create_rnic_adapter(struct mana_ib_dev *mdev)
{ … }
int mana_ib_gd_destroy_rnic_adapter(struct mana_ib_dev *mdev)
{ … }
int mana_ib_gd_add_gid(const struct ib_gid_attr *attr, void **context)
{ … }
int mana_ib_gd_del_gid(const struct ib_gid_attr *attr, void **context)
{ … }
int mana_ib_gd_config_mac(struct mana_ib_dev *mdev, enum mana_ib_addr_op op, u8 *mac)
{ … }
int mana_ib_gd_create_cq(struct mana_ib_dev *mdev, struct mana_ib_cq *cq, u32 doorbell)
{ … }
int mana_ib_gd_destroy_cq(struct mana_ib_dev *mdev, struct mana_ib_cq *cq)
{ … }
int mana_ib_gd_create_rc_qp(struct mana_ib_dev *mdev, struct mana_ib_qp *qp,
struct ib_qp_init_attr *attr, u32 doorbell, u64 flags)
{ … }
int mana_ib_gd_destroy_rc_qp(struct mana_ib_dev *mdev, struct mana_ib_qp *qp)
{ … }