net/dpaa2: add some parameter validations
[dpdk.git] / doc / guides / eventdevs / dpaa2.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright 2017 NXP
3
4
5 NXP DPAA2 Eventdev Driver
6 =========================
7
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
10 perform event scheduling.
11
12 More information can be found at `NXP Official Website
13 <http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/qoriq-arm-processors:QORIQ-ARM>`_.
14
15 Features
16 --------
17
18 The DPAA2 EVENTDEV implements many features in the eventdev API;
19
20 - Hardware based event scheduler
21 - 8 event ports
22 - 8 event queues
23 - Parallel flows
24 - Atomic flows
25
26 Supported DPAA2 SoCs
27 --------------------
28
29 - LX2160A
30 - LS2084A/LS2044A
31 - LS2088A/LS2048A
32 - LS1088A/LS1048A
33
34 Prerequisites
35 -------------
36
37 See :doc:`../platform/dpaa2` for setup information
38
39 Currently supported by DPDK:
40
41 - NXP SDK **19.09+**.
42 - MC Firmware version **10.18.0** and higher.
43 - Supported architectures:  **arm64 LE**.
44
45 - Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
46
47 .. note::
48
49    Some part of fslmc bus code (mc flib - object library) routines are
50    dual licensed (BSD & GPLv2).
51
52
53 Initialization
54 --------------
55
56 The dpaa2 eventdev is exposed as a vdev device which consists of a set of dpcon
57 devices and dpci devices. On EAL initialization, dpcon and dpci devices will be
58 probed and then vdev device can be created from the application code by
59
60 * Invoking ``rte_vdev_init("event_dpaa2")`` from the application
61
62 * Using ``--vdev="event_dpaa2"`` in the EAL options, which will call
63   rte_vdev_init() internally
64
65 Example:
66
67 .. code-block:: console
68
69    ./your_eventdev_application --vdev="event_dpaa2"
70
71 Enabling logs
72 -------------
73
74 For enabling logs, use the following EAL parameter:
75
76 .. code-block:: console
77
78    ./your_eventdev_application <EAL args> --log-level=pmd.event.dpaa2,<level>
79
80 Using ``eventdev.dpaa2`` as log matching criteria, all Event PMD logs can be
81 enabled which are lower than logging ``level``.
82
83 Limitations
84 -----------
85
86 Platform Requirement
87 ~~~~~~~~~~~~~~~~~~~~
88
89 DPAA2 drivers for DPDK can only work on NXP SoCs as listed in the
90 ``Supported DPAA2 SoCs``.
91
92 Port-core binding
93 ~~~~~~~~~~~~~~~~~
94
95 DPAA2 EVENTDEV can support only one eventport per core.