MCPcopy Create free account
hub / github.com/F-Stack/f-stack / skeldma_create

Function skeldma_create

dpdk/drivers/dma/skeleton/skeleton_dmadev.c:475–506  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

473};
474
475static int
476skeldma_create(const char *name, struct rte_vdev_device *vdev, int lcore_id)
477{
478 struct rte_dma_dev *dev;
479 struct skeldma_hw *hw;
480 int socket_id;
481
482 socket_id = (lcore_id < 0) ? rte_socket_id() :
483 rte_lcore_to_socket_id(lcore_id);
484 dev = rte_dma_pmd_allocate(name, socket_id, sizeof(struct skeldma_hw));
485 if (dev == NULL) {
486 SKELDMA_LOG(ERR, "Unable to allocate dmadev: %s", name);
487 return -EINVAL;
488 }
489
490 dev->device = &vdev->device;
491 dev->dev_ops = &skeldma_ops;
492 dev->fp_obj->dev_private = dev->data->dev_private;
493 dev->fp_obj->copy = skeldma_copy;
494 dev->fp_obj->submit = skeldma_submit;
495 dev->fp_obj->completed = skeldma_completed;
496 dev->fp_obj->completed_status = skeldma_completed_status;
497 dev->fp_obj->burst_capacity = skeldma_burst_capacity;
498
499 hw = dev->data->dev_private;
500 hw->lcore_id = lcore_id;
501 hw->socket_id = socket_id;
502
503 dev->state = RTE_DMA_DEV_READY;
504
505 return dev->data->dev_id;
506}
507
508static int
509skeldma_destroy(const char *name)

Callers 1

skeldma_probeFunction · 0.85

Calls 3

rte_socket_idFunction · 0.85
rte_lcore_to_socket_idFunction · 0.85
rte_dma_pmd_allocateFunction · 0.85

Tested by

no test coverage detected