gdma_dev
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
doorbell = mdev->gdma_dev->doorbell;
struct gdma_dev *mdev = madev->mdev;
dev->gdma_dev = mdev;
struct gdma_context *gc = dev->gdma_dev->gdma_context;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
err = mana_gd_create_mana_wq_cq(mdev->gdma_dev, &spec, &queue->kmem);
props->vendor_part_id = dev->gdma_dev->dev_id.type;
req.hdr.dev_id = dev->gdma_dev->dev_id;
err = mana_gd_create_mana_eq(mdev->gdma_dev, &spec, &mdev->fatal_err_eq);
err = mana_gd_create_mana_eq(mdev->gdma_dev, &spec, &mdev->eqs[i]);
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
return mdev->gdma_dev->gdma_context;
return mdev->gdma_dev->dev_id.type == GDMA_DEVICE_MANA_IB;
struct gdma_dev *gdma_dev;
doorbell = mdev->gdma_dev->doorbell;
req.hdr.dev_id = mdev->gdma_dev->dev_id;
int mana_gd_create_mana_eq(struct gdma_dev *gd,
queue->gdma_dev = gd;
int mana_gd_create_mana_wq_cq(struct gdma_dev *gd,
queue->gdma_dev = gd;
int mana_gd_register_device(struct gdma_dev *gd)
int mana_gd_deregister_device(struct gdma_dev *gd)
struct gdma_context *gc = queue->gdma_dev->gdma_context;
req.hdr.dev_id = queue->gdma_dev->dev_id;
req.pdid = queue->gdma_dev->pdid;
req.doolbell_id = queue->gdma_dev->doorbell;
struct gdma_context *gc = queue->gdma_dev->gdma_context;
req.hdr.dev_id = queue->gdma_dev->dev_id;
mana_gd_ring_doorbell(gc, queue->gdma_dev->doorbell, queue->type,
struct gdma_context *gc = cq->gdma_dev->gdma_context;
mana_gd_ring_doorbell(gc, cq->gdma_dev->doorbell, cq->type, cq->id,
struct gdma_context *gc = eq->gdma_dev->gdma_context;
gc = eq->gdma_dev->gdma_context;
mana_gd_ring_doorbell(gc, eq->gdma_dev->doorbell, eq->type, eq->id,
struct gdma_dev *gd = queue->gdma_dev;
struct gdma_dev *gd = queue->gdma_dev;
req.hdr.dev_id = eq->gdma_dev->dev_id;
static int mana_gd_create_eq(struct gdma_dev *gd,
int mana_gd_create_hwc_queue(struct gdma_dev *gd,
queue->gdma_dev = gd;
static int mana_gd_create_dma_region(struct gdma_dev *gd,
struct gdma_dev *gd = hwc->gdma_dev;
hwc->gdma_dev->pdid = val;
return mana_gd_create_hwc_queue(hwc->gdma_dev, &spec, queue);
return mana_gd_create_hwc_queue(hwc->gdma_dev, &spec, queue);
return mana_gd_create_hwc_queue(hwc->gdma_dev, &spec, queue);
mana_hwc_destroy_cq(hwc->gdma_dev->gdma_context, hwc_cq);
struct gdma_context *gc = hwc->gdma_dev->gdma_context;
mana_gd_destroy_queue(hwc->gdma_dev->gdma_context,
struct gdma_context *gc = hwc->gdma_dev->gdma_context;
struct gdma_dev *gd = &gc->hwc;
hwc->gdma_dev = gd;
mana_hwc_destroy_cq(hwc->gdma_dev->gdma_context, hwc->cq);
hwc->gdma_dev->doorbell = INVALID_DOORBELL;
hwc->gdma_dev->pdid = INVALID_PDID;
struct gdma_context *gc = hwc->gdma_dev->gdma_context;
gc = apc->ac->gdma_dev->gdma_context;
struct gdma_context *gc = ac->gdma_dev->gdma_context;
struct gdma_context *gc = ac->gdma_dev->gdma_context;
struct gdma_context *gc = ac->gdma_dev->gdma_context;
struct gdma_dev *gd = ac->gdma_dev;
struct gdma_context *gc = apc->ac->gdma_dev->gdma_context;
struct gdma_dev *gd = apc->ac->gdma_dev;
struct gdma_context *gc = rxq->gdma_rq->gdma_dev->gdma_context;
struct gdma_context *gc = rxq->gdma_rq->gdma_dev->gdma_context;
struct gdma_dev *gd = apc->ac->gdma_dev;
struct gdma_dev *gd = apc->ac->gdma_dev;
struct gdma_dev *gd = ac->gdma_dev;
struct gdma_context *gc = apc->ac->gdma_dev->gdma_context;
struct gdma_context *gc = apc->ac->gdma_dev->gdma_context;
ret = mana_fill_rx_oob(rx_oob, apc->ac->gdma_dev->gpa_mkey, rxq,
struct gdma_dev *gd = apc->ac->gdma_dev;
struct gdma_dev *gd = apc->ac->gdma_dev;
struct gdma_dev *gd = apc->ac->gdma_dev;
struct gdma_context *gc = ac->gdma_dev->gdma_context;
struct gdma_dev *gd = apc->ac->gdma_dev;
struct gdma_dev *gd = apc->ac->gdma_dev;
struct gdma_dev *gd = apc->ac->gdma_dev;
struct gdma_context *gc = ac->gdma_dev->gdma_context;
struct gdma_dev *gd = apc->ac->gdma_dev;
static void remove_adev(struct gdma_dev *gd)
static int add_adev(struct gdma_dev *gd, const char *name)
struct gdma_dev *gd = serv_work->gdma_dev;
struct gdma_dev *gd = &gc->mana_ib;
serv_work->gdma_dev = gd;
int mana_probe(struct gdma_dev *gd, bool resuming)
ac->gdma_dev = gd;
void mana_remove(struct gdma_dev *gd, bool suspending)
int mana_rdma_probe(struct gdma_dev *gd)
void mana_rdma_remove(struct gdma_dev *gd)
if (apc && apc->ac && apc->ac->gdma_dev &&
apc->ac->gdma_dev->gdma_context)
return mana_need_log(apc->ac->gdma_dev->gdma_context, err);
dev = mpc->ac->gdma_dev->gdma_context->dev;
dev = mpc->ac->gdma_dev->gdma_context->dev;
struct gdma_context *gc = ac->gdma_dev->gdma_context;
struct gdma_dev *gdma_dev;
struct gdma_dev hwc;
struct gdma_dev mana;
struct gdma_dev mana_ib;
static inline bool mana_gd_is_mana(struct gdma_dev *gd)
static inline bool mana_gd_is_hwc(struct gdma_dev *gd)
int mana_gd_create_hwc_queue(struct gdma_dev *gd,
int mana_gd_create_mana_eq(struct gdma_dev *gd,
int mana_gd_create_mana_wq_cq(struct gdma_dev *gd,
struct gdma_dev *gdma_dev;
int mana_gd_register_device(struct gdma_dev *gd);
int mana_gd_deregister_device(struct gdma_dev *gd);
struct gdma_dev *gdma_dev;
struct gdma_dev *gdma_dev;
int mana_probe(struct gdma_dev *gd, bool resuming);
void mana_remove(struct gdma_dev *gd, bool suspending);
int mana_rdma_probe(struct gdma_dev *gd);
void mana_rdma_remove(struct gdma_dev *gd);
struct gdma_dev *mdev;