dma/hisilicon: add control path
[dpdk.git] / doc / guides / dmadevs / hisilicon.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright(c) 2021 HiSilicon Limited.
3
4 HISILICON Kunpeng DMA Driver
5 ============================
6
7 Kunpeng SoC has an internal DMA unit which can be used by application
8 to accelerate data copies.
9 The DMA PF function supports multiple DMA channels.
10
11
12 Supported Kunpeng SoCs
13 ----------------------
14
15 * Kunpeng 920
16
17
18 Device Setup
19 -------------
20
21 Kunpeng DMA devices will need to be bound to a suitable DPDK-supported
22 user-space IO driver such as ``vfio-pci`` in order to be used by DPDK.
23
24 Device Probing and Initialization
25 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
26
27 Once probed successfully, the device will appear as four ``dmadev``
28 which can be accessed using API from the ``rte_dmadev`` library.
29
30 The name of the ``dmadev`` created is like "B:D.F-chX", e.g. DMA 0000:7b:00.0
31 will create four ``dmadev``,
32 the 1st ``dmadev`` name is "7b:00.0-ch0",
33 and the 2nd ``dmadev`` name is "7b:00.0-ch1".
34
35 Device Configuration
36 ~~~~~~~~~~~~~~~~~~~~~
37
38 Kunpeng DMA configuration requirements:
39
40 * ``ring_size`` must be a power of two, between 32 and 8192.
41 * Only one ``vchan`` is supported per ``dmadev``.
42 * Silent mode is not supported.
43 * The transfer direction must be set to ``RTE_DMA_DIR_MEM_TO_MEM``.