xref: /dpdk/doc/guides/vdpadevs/features_overview.rst (revision e88bd4746737a1ca464b866d29f20ff5a739cd3f)
1..  SPDX-License-Identifier: BSD-3-Clause
2    Copyright 2019 Mellanox Technologies, Ltd
3
4Overview of vDPA Drivers Features
5=================================
6
7This section explains the supported features that are listed in the table below.
8
9csum
10  Device can handle packets with partial checksum.
11
12guest csum
13  Guest can handle packets with partial checksum.
14
15mac
16  Device has given MAC address.
17
18gso
19  Device can handle packets with any GSO type.
20
21guest tso4
22  Guest can receive TSOv4.
23
24guest tso6
25  Guest can receive TSOv6.
26
27ecn
28  Device can receive TSO with ECN.
29
30ufo
31  Device can receive UFO.
32
33host tso4
34  Device can receive TSOv4.
35
36host tso6
37  Device can receive TSOv6.
38
39mrg rxbuf
40  Guest can merge receive buffers.
41
42ctrl vq
43  Control channel is available.
44
45ctrl rx
46  Control channel RX mode support.
47
48any layout
49  Device can handle any descriptor layout.
50
51guest announce
52  Guest can send gratuitous packets.
53
54mq
55  Device supports Receive Flow Steering.
56
57version 1
58  v1.0 compliant.
59
60log all
61  Device can log all write descriptors (live migration).
62
63indirect desc
64  Indirect buffer descriptors support.
65
66event idx
67  Support for avail_idx and used_idx fields.
68
69mtu
70  Host can advise the guest with its maximum supported MTU.
71
72in_order
73  Device can use descriptors in ring order.
74
75IOMMU platform
76  Device support IOMMU addresses.
77
78packed
79  Device support packed virtio queues.
80
81proto mq
82  Support the number of queues query.
83
84proto log shmfd
85  Guest support setting log base.
86
87proto rarp
88  Host can broadcast a fake RARP after live migration.
89
90proto reply ack
91  Host support requested operation status ack.
92
93proto host notifier
94  Host can register memory region based host notifiers.
95
96proto pagefault
97  Slave expose page-fault FD for migration process.
98
99queue statistics
100  Support virtio queue statistics query.
101
102BSD nic_uio
103  BSD ``nic_uio`` module supported.
104
105Linux VFIO
106  Works with ``vfio-pci`` kernel module.
107
108Other kdrv
109  Kernel module other than above ones supported.
110
111ARMv7
112  Support armv7 architecture.
113
114ARMv8
115  Support armv8a (64bit) architecture.
116
117Power8
118  Support PowerPC architecture.
119
120x86-32
121  Support 32bits x86 architecture.
122
123x86-64
124  Support 64bits x86 architecture.
125
126Usage doc
127  Documentation describes usage, In ``doc/guides/vdpadevs/``.
128
129Design doc
130  Documentation describes design. In ``doc/guides/vdpadevs/``.
131
132Perf doc
133  Documentation describes performance values, In ``doc/perf/``.
134
135.. note::
136
137   Most of the features capabilities should be provided by the drivers via the
138   next vDPA operations: ``get_features`` and ``get_protocol_features``.
139
140
141References
142==========
143
144  * `OASIS: Virtual I/O Device (VIRTIO) Version 1.1 <https://docs.oasis-open.org/virtio/virtio/v1.1/csprd01/virtio-v1.1-csprd01.html>`_
145  * `QEMU: Vhost-user Protocol <https://qemu.weilnetz.de/doc/interop/vhost-user.html>`_
146
147
148Features Table
149==============
150
151.. _table_vdpa_pmd_features:
152
153.. include:: overview_feature_table.txt
154
155.. Note::
156
157   Features marked with "P" are partially supported. Refer to the appropriate
158   driver guide in the following sections for details.
159