34807bde4fa82da8b3f14d8011dd48cc2cf134b1
[dpdk.git] / doc / guides / rawdevs / octeontx2_dma.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright(c) 2019 Marvell International Ltd.
3
4 OCTEON TX2 DMA Driver
5 =====================
6
7 OCTEON TX2 has an internal DMA unit which can be used by applications to initiate
8 DMA transaction internally, from/to host when OCTEON TX2 operates in PCIe End
9 Point mode. The DMA PF function supports 8 VFs corresponding to 8 DMA queues.
10 Each DMA queue was exposed as a VF function when SRIOV enabled.
11
12 Features
13 --------
14
15 This DMA PMD supports below 3 modes of memory transfers
16
17 #. Internal - OCTEON TX2 DRAM to DRAM without core intervention
18
19 #. Inbound  - Host DRAM to OCTEON TX2 DRAM without host/OCTEON TX2 cores involvement
20
21 #. Outbound - OCTEON TX2 DRAM to Host DRAM without host/OCTEON TX2 cores involvement
22
23 Prerequisites and Compilation procedure
24 ---------------------------------------
25
26    See :doc:`../platform/octeontx2` for setup information.
27
28
29 Pre-Installation Configuration
30 ------------------------------
31
32 Config File Options
33 ~~~~~~~~~~~~~~~~~~~
34
35 The following options can be modified in the ``config`` file.
36
37 - ``CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_DMA_RAWDEV`` (default ``y``)
38
39   Toggle compilation of the ``lrte_pmd_octeontx2_dma`` driver.
40
41 Enabling logs
42 -------------
43
44 For enabling logs, use the following EAL parameter:
45
46 .. code-block:: console
47
48    ./your_dma_application <EAL args> --log-level=pmd.raw.octeontx2.dpi,<level>
49
50 Using ``pmd.raw.octeontx2.dpi`` as log matching criteria, all Event PMD logs
51 can be enabled which are lower than logging ``level``.
52
53 Initialization
54 --------------
55
56 The number of DMA VFs (queues) enabled can be controlled by setting sysfs
57 entry, `sriov_numvfs` for the corresponding PF driver.
58
59 .. code-block:: console
60
61  echo <num_vfs> > /sys/bus/pci/drivers/octeontx2-dpi/0000\:05\:00.0/sriov_numvfs
62
63 Once the required VFs are enabled, to be accessible from DPDK, VFs need to be
64 bound to vfio-pci driver.