xref: /dpdk/doc/guides/rawdevs/gdtc.rst (revision 30495f54583d93d50df02ec5e15cbaad6f6dcc6a)
1*30495f54SYong Zhang.. SPDX-License-Identifier: BSD-3-Clause
2*30495f54SYong Zhang   Copyright 2024 ZTE Corporation
3*30495f54SYong Zhang
4*30495f54SYong ZhangGDTC Rawdev Driver
5*30495f54SYong Zhang==================
6*30495f54SYong Zhang
7*30495f54SYong ZhangThe ``gdtc`` rawdev driver is an implementation of the rawdev API,
8*30495f54SYong Zhangthat provides communication between two separate hosts.
9*30495f54SYong ZhangThis is achieved via using the GDMA controller of Dinghai SoC,
10*30495f54SYong Zhangwhich can be configured through exposed MPF device.
11*30495f54SYong Zhang
12*30495f54SYong ZhangDevice Setup
13*30495f54SYong Zhang------------
14*30495f54SYong Zhang
15*30495f54SYong ZhangUsing the GDTC PMD driver does not require the MPF device
16*30495f54SYong Zhangto bind additional user-space IO driver.
17*30495f54SYong Zhang
18*30495f54SYong ZhangBefore performing actual data transmission,
19*30495f54SYong Zhangit is necessary to call ``rte_rawdev_queue_setup()``
20*30495f54SYong Zhangto obtain an available queue ID.
21*30495f54SYong Zhang
22*30495f54SYong ZhangFor data transfer, utilize the standard ``rte_rawdev_enqueue_buffers()`` API.
23*30495f54SYong ZhangThe data transfer status can be queried via ``rte_rawdev_dequeue_buffers()``,
24*30495f54SYong Zhangwhich will return the number of successfully transferred data items.
25*30495f54SYong Zhang
26*30495f54SYong ZhangInitialization
27*30495f54SYong Zhang--------------
28*30495f54SYong Zhang
29*30495f54SYong ZhangThe ``gdtc`` rawdev driver needs to work in IOVA PA mode.
30*30495f54SYong ZhangConsider using ``--iova-mode=pa`` in the EAL options.
31*30495f54SYong Zhang
32*30495f54SYong ZhangPlatform Requirement
33*30495f54SYong Zhang~~~~~~~~~~~~~~~~~~~~
34*30495f54SYong Zhang
35*30495f54SYong ZhangThis PMD is only supported on ZTE Neo Platforms:
36*30495f54SYong Zhang- Neo X510/X512
37