1.. SPDX-License-Identifier: BSD-3-Clause 2 Copyright 2018 NXP 3 4NXP DPAA2 QDMA Driver 5===================== 6 7The DPAA2 QDMA is an implementation of the rawdev API, that provide means 8to initiate a DMA transaction from CPU. The initiated DMA is performed 9without CPU being involved in the actual DMA transaction. This is achieved 10via using the DPDMAI device exposed by MC. 11 12More 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 15Features 16-------- 17 18The DPAA2 QDMA implements following features in the rawdev API; 19 20- Supports issuing DMA of data within memory without hogging CPU while 21 performing DMA operation. 22- Supports configuring to optionally get status of the DMA translation on 23 per DMA operation basis. 24 25Supported DPAA2 SoCs 26-------------------- 27 28- LX2160A 29- LS2084A/LS2044A 30- LS2088A/LS2048A 31- LS1088A/LS1048A 32 33Prerequisites 34------------- 35 36See :doc:`../platform/dpaa2` for setup information 37 38- Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment. 39 40.. note:: 41 42 Some part of fslmc bus code (mc flib - object library) routines are 43 dual licensed (BSD & GPLv2). 44 45 46Enabling logs 47------------- 48 49For enabling logs, use the following EAL parameter: 50 51.. code-block:: console 52 53 ./your_qdma_application <EAL args> --log-level=pmd.raw.dpaa2.qdma,<level> 54 55Using ``pmd.raw.dpaa2.qdma`` as log matching criteria, all Event PMD logs can be 56enabled which are lower than logging ``level``. 57 58 59Initialization 60-------------- 61 62The DPAA2 QDMA is exposed as a vdev device which consists of dpdmai devices. 63On EAL initialization, dpdmai devices will be probed and populated into the 64rawdevices. The rawdev ID of the device can be obtained using 65 66* Invoking ``rte_rawdev_get_dev_id("dpdmai.x")`` from the application 67 where x is the object ID of the DPDMAI object created by MC. Use can 68 use this index for further rawdev function calls. 69 70Platform Requirement 71~~~~~~~~~~~~~~~~~~~~ 72 73DPAA2 drivers for DPDK can only work on NXP SoCs as listed in the 74``Supported DPAA2 SoCs``. 75