| /dpdk/lib/eventdev/ |
| H A D | eventdev_trace_points.c | 11 lib.eventdev.configure) 14 lib.eventdev.queue.setup) 17 lib.eventdev.port.setup) 20 lib.eventdev.port.link) 23 lib.eventdev.port.unlink) 26 lib.eventdev.start) 29 lib.eventdev.stop) 32 lib.eventdev.close) 35 lib.eventdev.enq.burst) 38 lib.eventdev.deq.burst) [all …]
|
| H A D | eventdev_pmd_pci.h | 46 struct rte_eventdev *eventdev; in rte_event_pmd_pci_probe_named() local 54 if (eventdev == NULL) in rte_event_pmd_pci_probe_named() 58 eventdev->data->dev_private = in rte_event_pmd_pci_probe_named() 70 eventdev->dev = &pci_dev->device; in rte_event_pmd_pci_probe_named() 73 retval = devinit(eventdev); in rte_event_pmd_pci_probe_named() 84 rte_event_pmd_release(eventdev); in rte_event_pmd_pci_probe_named() 123 struct rte_eventdev *eventdev; in rte_event_pmd_pci_remove() local 134 if (eventdev == NULL) in rte_event_pmd_pci_remove() 145 ret = devuninit(eventdev); in rte_event_pmd_pci_remove() 150 rte_event_pmd_release(eventdev); in rte_event_pmd_pci_remove() [all …]
|
| H A D | eventdev_pmd_vdev.h | 50 struct rte_eventdev *eventdev; in rte_event_pmd_vdev_init() local 53 eventdev = rte_event_pmd_allocate(name, socket_id); in rte_event_pmd_vdev_init() 54 if (eventdev == NULL) in rte_event_pmd_vdev_init() 59 eventdev->data->dev_private = in rte_event_pmd_vdev_init() 65 if (eventdev->data->dev_private == NULL) in rte_event_pmd_vdev_init() 70 return eventdev; in rte_event_pmd_vdev_init() 87 struct rte_eventdev *eventdev; in rte_event_pmd_vdev_uninit() local 92 eventdev = rte_event_pmd_get_named_dev(name); in rte_event_pmd_vdev_uninit() 93 if (eventdev == NULL) in rte_event_pmd_vdev_uninit() 96 ret = rte_event_dev_close(eventdev->data->dev_id); in rte_event_pmd_vdev_uninit() [all …]
|
| H A D | rte_eventdev.c | 1421 struct rte_eventdev *eventdev; in rte_event_pmd_allocate() local 1436 eventdev = &rte_eventdevs[dev_id]; in rte_event_pmd_allocate() 1438 if (eventdev->data == NULL) { in rte_event_pmd_allocate() 1447 eventdev->data = eventdev_data; in rte_event_pmd_allocate() 1454 eventdev->data->dev_id = dev_id; in rte_event_pmd_allocate() 1463 return eventdev; in rte_event_pmd_allocate() 1473 if (eventdev == NULL) in rte_event_pmd_release() 1485 eventdev->data->dev_id); in rte_event_pmd_release() 1498 eventdev->data = NULL; in rte_event_pmd_release() 1505 if (eventdev == NULL) in event_dev_probing_finish() [all …]
|
| /dpdk/drivers/event/skeleton/ |
| H A D | skeleton_eventdev.c | 343 skeleton_eventdev_init(struct rte_eventdev *eventdev) in skeleton_eventdev_init() argument 351 eventdev->dev_ops = &skeleton_eventdev_ops; in skeleton_eventdev_init() 352 eventdev->enqueue = skeleton_eventdev_enqueue; in skeleton_eventdev_init() 354 eventdev->dequeue = skeleton_eventdev_dequeue; in skeleton_eventdev_init() 361 pci_dev = RTE_DEV_TO_PCI(eventdev->dev); in skeleton_eventdev_init() 381 eventdev->data->dev_id, eventdev->data->socket_id, in skeleton_eventdev_init() 432 struct rte_eventdev *eventdev; in skeleton_eventdev_create() local 434 eventdev = rte_event_pmd_vdev_init(name, in skeleton_eventdev_create() 436 if (eventdev == NULL) { in skeleton_eventdev_create() 441 eventdev->dev_ops = &skeleton_eventdev_ops; in skeleton_eventdev_create() [all …]
|
| H A D | skeleton_eventdev.h | 36 skeleton_pmd_priv(const struct rte_eventdev *eventdev) in skeleton_pmd_priv() argument 38 return eventdev->data->dev_private; in skeleton_pmd_priv()
|
| /dpdk/doc/guides/eventdevs/ |
| H A D | sw.rst | 7 The software eventdev is an implementation of the eventdev API, that provides a 8 wide range of the eventdev features. The eventdev relies on a CPU core to 17 The software eventdev implements many features in the eventdev API; 36 The software eventdev is a vdev device, and as such can be created from the 116 The software eventdev implementation has a few limitations. The reason for 125 traffic. An eventdev with this capability allows enqueuing Atomic, Ordered and 134 eventdev. 139 The software eventdev is a centralized scheduler, requiring a service core to 145 eventdev. 150 The eventdev API supports a timeout when dequeuing packets using the [all …]
|
| H A D | dsw.rst | 7 The distributed software event device is an eventdev driver which 8 distributes the task of scheduling events among all the eventdev ports 26 The distributed software eventdev is a vdev device, and as such can be 46 The distributed software eventdev uses an internal signaling scheme 61 For efficiency reasons, the distributed software eventdev might not 79 The distributed software eventdev does not support event priorities. 84 The distributed software eventdev does not support the ordered queue type. 90 The distributed software eventdev does not support queues of type 97 The distributed software eventdev does not support calls to
|
| H A D | dpaa.rst | 7 The dpaa eventdev is an implementation of the eventdev API, that provides a 8 wide range of the eventdev features. The eventdev relies on a dpaa based 17 The DPAA EVENTDEV implements many features in the eventdev API; 47 The dpaa eventdev is exposed as a vdev device which consists of a set of channels 67 1. DPAA eventdev can not work with DPAA PUSH mode queues configured for ethdev.
|
| H A D | dpaa2.rst | 8 The dpaa2 eventdev is an implementation of the eventdev API, that provides a 9 wide range of the eventdev features. The eventdev relies on a dpaa2 hw to 18 The DPAA2 EVENTDEV implements many features in the eventdev API; 50 The dpaa2 eventdev is exposed as a vdev device which consists of a set of dpcon 74 Using ``eventdev.dpaa2`` as log matching criteria, all Event PMD logs can be
|
| H A D | opdl.rst | 7 The OPDL (Ordered Packet Distribution Library) eventdev is a specific\ 8 implementation of the eventdev API. It is particularly suited to packet\ 19 The OPDL eventdev implements a subset of features of the eventdev API; 34 The software eventdev is a vdev device, and as such can be created from the 130 eventdev xstats API. Statistics are per port as follows:
|
| H A D | dlb2.rst | 28 However, the DLB hardware is not a perfect match to the eventdev API. Some DLB 34 eventdev API and DLB misalign. 46 The DLB is a closed system eventdev, and as such the ``nb_events_limit`` device 48 defined in the eventdev header file. The limit is applied to all enqueues, 89 DLB ports come in two flavors: load-balanced and directed. The eventdev API 117 cannot change after the eventdev is started. 119 The eventdev API does not have a directed scheduling type. To support directed 185 When the eventdev is started, each port is pre-allocated a high watermark's 203 the per-port backpressure described in the eventdev API. 224 The out-of-credit situations are typically transient, and an eventdev [all …]
|
| /dpdk/doc/guides/tools/ |
| H A D | testeventdev.rst | 4 dpdk-test-eventdev Application 8 application that allows exercising various eventdev use cases. 21 dpdk-test-eventdev [EAL Options] -- [application options] 27 with the ``dpdk-test-eventdev`` application. 37 Add a virtual eventdev device. 216 .. table:: Order queue test eventdev configuration. 359 .. table:: Perf queue test eventdev configuration. 479 ``all types queue`` eventdev scheme. 581 .. table:: Pipeline queue test eventdev configuration. 698 ``all types queue`` eventdev scheme. [all …]
|
| /dpdk/doc/guides/prog_guide/ |
| H A D | eventdev.rst | 13 The eventdev framework introduces the event driven programming model. In a 27 Step-by-step instructions of the eventdev design is available in the `API 34 payload and metadata required for scheduling by an eventdev. The 124 events to the eventdev. An example of a PMD of this type is the eventdev 190 The ``--vdev`` EAL option allows adding eventdev instances to your DPDK 191 application, using the name of the eventdev PMD as an argument. 200 In the following code, we configure eventdev instance with 3 queues 301 from e.g.: a NIC so it is not linked to any eventdev queues. 323 A single function call tells the eventdev instance to start processing 327 eventdev. [all …]
|
| H A D | event_crypto_adapter.rst | 7 The DPDK :doc:`Eventdev library <eventdev>` provides event driven 16 The Adapter queries an eventdev PMD to determine which mechanism to be used. 18 and uses the eventdev PMD functions to configure HW based packet transfer 23 crypto device or send it to the crypto adapter via eventdev based on 64 queue to this port and starts enqueuing crypto operations as events to eventdev 87 a single eventdev, then add cryptodev and queue pair to the adapter instance. 116 If the application desires to have finer control of eventdev port allocation 167 the application to query the adapter capabilities for an eventdev and cryptodev 298 This function calls the start callbacks of the eventdev PMDs for hardware based 308 The eventdev to which the event_crypto_adapter is connected needs to [all …]
|
| H A D | event_ethernet_tx_adapter.rst | 14 transmit stage of the application allowing the same application code to use eventdev 27 a single eventdev, next the adapter instance is configured with Tx queues, 39 If the application desires to have finer control of eventdev port configuration, 76 the application to query the adapter capabilities for an eventdev and ethdev 115 This function calls the start callback of the eventdev PMD if supported, 126 If the eventdev PMD supports the ``RTE_EVENT_ETH_TX_ADAPTER_CAP_INTERNAL_PORT`` 165 the counts from the eventdev PMD callback if the callback is supported, and
|
| H A D | event_ethernet_rx_adapter.rst | 13 event device using the eventdev API. Both transfer mechanisms may be present on 19 the eventdev PMD to advertise features supported for a given ethdev and allows 27 a single eventdev, next the adapter instance is configured with Rx queues 31 For SW based packet transfers from ethdev to eventdev, the adapter uses a 57 If the application desires to have finer control of eventdev port allocation 107 the application to query the adapter capabilities for an eventdev and ethdev 142 This function calls the start callbacks of the eventdev PMDs for hardware based 143 eventdev-ethdev connections and ``rte_service_run_state_set()`` to enable the 148 The eventdev to which the event_eth_rx_adapter is connected needs to 156 enqueued event counts are a sum of the counts from the eventdev PMD callbacks
|
| /dpdk/drivers/event/dpaa/ |
| H A D | dpaa_eventdev.c | 642 u16 ch_id = eventdev->evq_info[ev_qid].ch_id; in dpaa_event_eth_rx_adapter_queue_add() 997 struct rte_eventdev *eventdev; in dpaa_event_dev_create() local 1000 eventdev = rte_event_pmd_vdev_init(name, in dpaa_event_dev_create() 1003 if (eventdev == NULL) { in dpaa_event_dev_create() 1007 priv = eventdev->data->dev_private; in dpaa_event_dev_create() 1009 eventdev->dev_ops = &dpaa_eventdev_ops; in dpaa_event_dev_create() 1010 eventdev->enqueue = dpaa_event_enqueue; in dpaa_event_dev_create() 1014 eventdev->dequeue = dpaa_event_dequeue; in dpaa_event_dev_create() 1018 eventdev->dev_ops->timeout_ticks = in dpaa_event_dev_create() 1020 eventdev->dequeue = dpaa_event_dequeue_intr; in dpaa_event_dev_create() [all …]
|
| /dpdk/doc/guides/sample_app_ug/ |
| H A D | eventdev_pipeline.rst | 7 The eventdev pipeline sample application is a sample app that demonstrates 8 the usage of the eventdev API using the software PMD. It shows how an 31 the eventdev PMD to use, and a number of attributes of the processing pipeline 34 An example eventdev pipeline running with the software eventdev PMD using 64 Configuration of the eventdev is covered in detail in the programmers guide, 71 At runtime the eventdev pipeline application prints out a summary of the 82 flows to use and what eventdev PMD is in use. See the following sample output 143 To get a full dump of the state of the eventdev PMD, pass the ``-D`` flag to 147 used, see the Event Device Drivers section for a list of eventdev PMDs.
|
| H A D | l2_forward_event.rst | 9 The L2 Forwarding eventdev sample application is a simple example of packet 16 The L2 Forwarding eventdev sample application, performs L2 forwarding for each 131 The L2 Forwarding eventdev sample application takes specific parameters, 137 eventdev parameters and in **parse_eventdev_args()** for eventdev parameters. 143 are parsed in eventdev_resource_setup() function during eventdev setup: 246 To configure eventdev support, application setups following components: 406 :start-after: Read packet from eventdev. 8< 407 :end-before: >8 End of reading packets from eventdev. 412 by the eventdev. 434 :start-after: Read packet from eventdev. 8< [all …]
|
| /dpdk/drivers/event/dpaa2/ |
| H A D | dpaa2_eventdev.c | 1092 struct rte_eventdev *eventdev; in dpaa2_eventdev_create() local 1098 eventdev = rte_event_pmd_vdev_init(name, in dpaa2_eventdev_create() 1101 if (eventdev == NULL) { in dpaa2_eventdev_create() 1106 eventdev->dev_ops = &dpaa2_eventdev_ops; in dpaa2_eventdev_create() 1107 eventdev->enqueue = dpaa2_eventdev_enqueue; in dpaa2_eventdev_create() 1120 priv = eventdev->data->dev_private; in dpaa2_eventdev_create() 1148 event_dev_probing_finish(eventdev); in dpaa2_eventdev_create() 1157 struct rte_eventdev *eventdev; in dpaa2_eventdev_destroy() local 1161 eventdev = rte_event_pmd_get_named_dev(name); in dpaa2_eventdev_destroy() 1162 if (eventdev == NULL) { in dpaa2_eventdev_destroy() [all …]
|
| /dpdk/drivers/event/dlb2/ |
| H A D | dlb2_inline_fns.h | 13 dlb2_pmd_priv(const struct rte_eventdev *eventdev) in dlb2_pmd_priv() argument 15 return eventdev->data->dev_private; in dlb2_pmd_priv()
|
| /dpdk/drivers/event/opdl/ |
| H A D | opdl_evdev.h | 261 opdl_pmd_priv(const struct rte_eventdev *eventdev) in opdl_pmd_priv() argument 263 return eventdev->data->dev_private; in opdl_pmd_priv() 273 opdl_pmd_priv_const(const struct rte_eventdev *eventdev) in opdl_pmd_priv_const() argument 275 return eventdev->data->dev_private; in opdl_pmd_priv_const()
|
| /dpdk/drivers/event/sw/ |
| H A D | sw_evdev.h | 280 sw_pmd_priv(const struct rte_eventdev *eventdev) in sw_pmd_priv() argument 282 return eventdev->data->dev_private; in sw_pmd_priv() 286 sw_pmd_priv_const(const struct rte_eventdev *eventdev) in sw_pmd_priv_const() argument 288 return eventdev->data->dev_private; in sw_pmd_priv_const()
|
| /dpdk/drivers/event/dlb2/pf/ |
| H A D | dlb2_pf.c | 609 dlb2_eventdev_pci_init(struct rte_eventdev *eventdev) in dlb2_eventdev_pci_init() argument 628 eventdev->data->dev_id, eventdev->data->socket_id); in dlb2_eventdev_pci_init() 632 pci_dev = RTE_DEV_TO_PCI(eventdev->dev); in dlb2_eventdev_pci_init() 635 dlb2 = dlb2_pmd_priv(eventdev); /* rte_zmalloc_socket mem */ in dlb2_eventdev_pci_init() 661 ret = dlb2_primary_eventdev_probe(eventdev, in dlb2_eventdev_pci_init() 665 dlb2 = dlb2_pmd_priv(eventdev); in dlb2_eventdev_pci_init() 667 ret = dlb2_secondary_eventdev_probe(eventdev, in dlb2_eventdev_pci_init()
|