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

Function nitrox_sym_pmd_create

dpdk/drivers/crypto/nitrox/nitrox_sym.c:745–792  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

743};
744
745int
746nitrox_sym_pmd_create(struct nitrox_device *ndev)
747{
748 char name[RTE_CRYPTODEV_NAME_MAX_LEN];
749 struct rte_cryptodev_pmd_init_params init_params = {
750 .name = "",
751 .socket_id = ndev->pdev->device.numa_node,
752 .private_data_size = sizeof(struct nitrox_sym_device)
753 };
754 struct rte_cryptodev *cdev;
755
756 rte_pci_device_name(&ndev->pdev->addr, name, sizeof(name));
757 snprintf(name + strlen(name), RTE_CRYPTODEV_NAME_MAX_LEN - strlen(name),
758 "_n5sym");
759 ndev->rte_sym_dev.driver = &nitrox_rte_sym_drv;
760 ndev->rte_sym_dev.numa_node = ndev->pdev->device.numa_node;
761 ndev->rte_sym_dev.devargs = NULL;
762 cdev = rte_cryptodev_pmd_create(name, &ndev->rte_sym_dev,
763 &init_params);
764 if (!cdev) {
765 NITROX_LOG(ERR, "Cryptodev '%s' creation failed\n", name);
766 return -ENODEV;
767 }
768
769 ndev->rte_sym_dev.name = cdev->data->name;
770 cdev->driver_id = nitrox_sym_drv_id;
771 cdev->dev_ops = &nitrox_cryptodev_ops;
772 cdev->enqueue_burst = nitrox_sym_dev_enq_burst;
773 cdev->dequeue_burst = nitrox_sym_dev_deq_burst;
774 cdev->feature_flags = RTE_CRYPTODEV_FF_SYMMETRIC_CRYPTO |
775 RTE_CRYPTODEV_FF_HW_ACCELERATED |
776 RTE_CRYPTODEV_FF_SYM_OPERATION_CHAINING |
777 RTE_CRYPTODEV_FF_IN_PLACE_SGL |
778 RTE_CRYPTODEV_FF_OOP_SGL_IN_SGL_OUT |
779 RTE_CRYPTODEV_FF_OOP_SGL_IN_LB_OUT |
780 RTE_CRYPTODEV_FF_OOP_LB_IN_SGL_OUT |
781 RTE_CRYPTODEV_FF_OOP_LB_IN_LB_OUT;
782
783 ndev->sym_dev = cdev->data->dev_private;
784 ndev->sym_dev->cdev = cdev;
785 ndev->sym_dev->ndev = ndev;
786
787 rte_cryptodev_pmd_probing_finish(cdev);
788
789 NITROX_LOG(DEBUG, "Created cryptodev '%s', dev_id %d, drv_id %d\n",
790 cdev->data->name, cdev->data->dev_id, nitrox_sym_drv_id);
791 return 0;
792}
793
794int
795nitrox_sym_pmd_destroy(struct nitrox_device *ndev)

Callers 1

nitrox_pci_probeFunction · 0.85

Calls 4

rte_pci_device_nameFunction · 0.85
snprintfFunction · 0.85
rte_cryptodev_pmd_createFunction · 0.85

Tested by

no test coverage detected