2. NXP DPAA2 Eventdev Driver
The dpaa2 eventdev is an implementation of the eventdev API, that provides a wide range of the eventdev features. The eventdev relies on a dpaa2 hw to perform event scheduling.
More information can be found at NXP Official Website.
2.1. Features
The DPAA2 EVENTDEV implements many features in the eventdev API;
- Hardware based event scheduler
- 8 event ports
- 8 event queues
- Parallel flows
- Atomic flows
2.2. Supported DPAA2 SoCs
- LX2160A
- LS2084A/LS2044A
- LS2088A/LS2048A
- LS1088A/LS1048A
2.3. Prerequisites
See NXP QorIQ DPAA2 Board Support Package for setup information
Currently supported by DPDK:
- NXP SDK 19.03+.
- MC Firmware version 10.14.0 and higher.
- Supported architectures: arm64 LE.
- Follow the DPDK Getting Started Guide for Linux to setup the basic DPDK environment.
Note
Some part of fslmc bus code (mc flib - object library) routines are dual licensed (BSD & GPLv2).
2.4. Pre-Installation Configuration
2.4.1. Config File Options
The following options can be modified in the config
file.
Please note that enabling debugging options may affect system performance.
CONFIG_RTE_LIBRTE_PMD_DPAA2_EVENTDEV
(defaulty
)Toggle compilation of the
lrte_pmd_dpaa2_event
driver.
2.4.2. Driver Compilation
To compile the DPAA2 EVENTDEV PMD for Linux arm64 gcc target, run the
following make
command:
cd <DPDK-source-directory>
make config T=arm64-dpaa2-linux-gcc install
2.5. Initialization
The dpaa2 eventdev is exposed as a vdev device which consists of a set of dpcon devices and dpci devices. On EAL initialization, dpcon and dpci devices will be probed and then vdev device can be created from the application code by
- Invoking
rte_vdev_init("event_dpaa2")
from the application - Using
--vdev="event_dpaa2"
in the EAL options, which will call rte_vdev_init() internally
Example:
./your_eventdev_application --vdev="event_dpaa2"
2.6. Enabling logs
For enabling logs, use the following EAL parameter:
./your_eventdev_application <EAL args> --log-level=pmd.event.dpaa2,<level>
Using eventdev.dpaa2
as log matching criteria, all Event PMD logs can be
enabled which are lower than logging level
.
2.7. Limitations
2.7.1. Platform Requirement
DPAA2 drivers for DPDK can only work on NXP SoCs as listed in the
Supported DPAA2 SoCs
.
2.7.2. Port-core binding
DPAA2 EVENTDEV can support only one eventport per core.