xref: /dpdk/doc/guides/vdpadevs/features_overview.rst (revision 04ed01f1f6b6c27a092f24cac2e4eeed6cff08ed)
16222035eSMatan Azrad..  SPDX-License-Identifier: BSD-3-Clause
26222035eSMatan Azrad    Copyright 2019 Mellanox Technologies, Ltd
36222035eSMatan Azrad
46222035eSMatan AzradOverview of vDPA Drivers Features
56222035eSMatan Azrad=================================
66222035eSMatan Azrad
76222035eSMatan AzradThis section explains the supported features that are listed in the table below.
86222035eSMatan Azrad
96222035eSMatan Azradcsum
106222035eSMatan Azrad  Device can handle packets with partial checksum.
116222035eSMatan Azrad
126222035eSMatan Azradguest csum
136222035eSMatan Azrad  Guest can handle packets with partial checksum.
146222035eSMatan Azrad
156222035eSMatan Azradmac
166222035eSMatan Azrad  Device has given MAC address.
176222035eSMatan Azrad
186222035eSMatan Azradgso
196222035eSMatan Azrad  Device can handle packets with any GSO type.
206222035eSMatan Azrad
216222035eSMatan Azradguest tso4
226222035eSMatan Azrad  Guest can receive TSOv4.
236222035eSMatan Azrad
246222035eSMatan Azradguest tso6
256222035eSMatan Azrad  Guest can receive TSOv6.
266222035eSMatan Azrad
276222035eSMatan Azradecn
286222035eSMatan Azrad  Device can receive TSO with ECN.
296222035eSMatan Azrad
306222035eSMatan Azradufo
316222035eSMatan Azrad  Device can receive UFO.
326222035eSMatan Azrad
336222035eSMatan Azradhost tso4
346222035eSMatan Azrad  Device can receive TSOv4.
356222035eSMatan Azrad
366222035eSMatan Azradhost tso6
376222035eSMatan Azrad  Device can receive TSOv6.
386222035eSMatan Azrad
396222035eSMatan Azradmrg rxbuf
406222035eSMatan Azrad  Guest can merge receive buffers.
416222035eSMatan Azrad
426222035eSMatan Azradctrl vq
436222035eSMatan Azrad  Control channel is available.
446222035eSMatan Azrad
456222035eSMatan Azradctrl rx
466222035eSMatan Azrad  Control channel RX mode support.
476222035eSMatan Azrad
486222035eSMatan Azradany layout
496222035eSMatan Azrad  Device can handle any descriptor layout.
506222035eSMatan Azrad
516222035eSMatan Azradguest announce
526222035eSMatan Azrad  Guest can send gratuitous packets.
536222035eSMatan Azrad
546222035eSMatan Azradmq
556222035eSMatan Azrad  Device supports Receive Flow Steering.
566222035eSMatan Azrad
576222035eSMatan Azradversion 1
586222035eSMatan Azrad  v1.0 compliant.
596222035eSMatan Azrad
606222035eSMatan Azradlog all
616222035eSMatan Azrad  Device can log all write descriptors (live migration).
626222035eSMatan Azrad
636222035eSMatan Azradindirect desc
646222035eSMatan Azrad  Indirect buffer descriptors support.
656222035eSMatan Azrad
666222035eSMatan Azradevent idx
676222035eSMatan Azrad  Support for avail_idx and used_idx fields.
686222035eSMatan Azrad
696222035eSMatan Azradmtu
706222035eSMatan Azrad  Host can advise the guest with its maximum supported MTU.
716222035eSMatan Azrad
726222035eSMatan Azradin_order
736222035eSMatan Azrad  Device can use descriptors in ring order.
746222035eSMatan Azrad
756222035eSMatan AzradIOMMU platform
766222035eSMatan Azrad  Device support IOMMU addresses.
776222035eSMatan Azrad
786222035eSMatan Azradpacked
796222035eSMatan Azrad  Device support packed virtio queues.
806222035eSMatan Azrad
816222035eSMatan Azradproto mq
826222035eSMatan Azrad  Support the number of queues query.
836222035eSMatan Azrad
846222035eSMatan Azradproto log shmfd
856222035eSMatan Azrad  Guest support setting log base.
866222035eSMatan Azrad
876222035eSMatan Azradproto rarp
886222035eSMatan Azrad  Host can broadcast a fake RARP after live migration.
896222035eSMatan Azrad
906222035eSMatan Azradproto reply ack
916222035eSMatan Azrad  Host support requested operation status ack.
926222035eSMatan Azrad
936222035eSMatan Azradproto host notifier
946222035eSMatan Azrad  Host can register memory region based host notifiers.
956222035eSMatan Azrad
966222035eSMatan Azradproto pagefault
976222035eSMatan Azrad  Slave expose page-fault FD for migration process.
986222035eSMatan Azrad
991cb44157SMatan Azradqueue statistics
1001cb44157SMatan Azrad  Support virtio queue statistics query.
1011cb44157SMatan Azrad
102*04ed01f1SThomas MonjalonFreeBSD
103*04ed01f1SThomas Monjalon  Support FreeBSD.
1046222035eSMatan Azrad
105*04ed01f1SThomas MonjalonLinux
106*04ed01f1SThomas Monjalon  Support Linux.
1076222035eSMatan Azrad
1086222035eSMatan AzradARMv7
1096222035eSMatan Azrad  Support armv7 architecture.
1106222035eSMatan Azrad
1116222035eSMatan AzradARMv8
1126222035eSMatan Azrad  Support armv8a (64bit) architecture.
1136222035eSMatan Azrad
1146222035eSMatan AzradPower8
1156222035eSMatan Azrad  Support PowerPC architecture.
1166222035eSMatan Azrad
1176222035eSMatan Azradx86-32
1186222035eSMatan Azrad  Support 32bits x86 architecture.
1196222035eSMatan Azrad
1206222035eSMatan Azradx86-64
1216222035eSMatan Azrad  Support 64bits x86 architecture.
1226222035eSMatan Azrad
1236222035eSMatan AzradUsage doc
1246222035eSMatan Azrad  Documentation describes usage, In ``doc/guides/vdpadevs/``.
1256222035eSMatan Azrad
1266222035eSMatan AzradDesign doc
1276222035eSMatan Azrad  Documentation describes design. In ``doc/guides/vdpadevs/``.
1286222035eSMatan Azrad
1296222035eSMatan AzradPerf doc
1306222035eSMatan Azrad  Documentation describes performance values, In ``doc/perf/``.
1316222035eSMatan Azrad
1326222035eSMatan Azrad.. note::
1336222035eSMatan Azrad
1346222035eSMatan Azrad   Most of the features capabilities should be provided by the drivers via the
1356222035eSMatan Azrad   next vDPA operations: ``get_features`` and ``get_protocol_features``.
1366222035eSMatan Azrad
1376222035eSMatan Azrad
1386222035eSMatan AzradReferences
1396222035eSMatan Azrad==========
1406222035eSMatan Azrad
1416222035eSMatan Azrad  * `OASIS: Virtual I/O Device (VIRTIO) Version 1.1 <https://docs.oasis-open.org/virtio/virtio/v1.1/csprd01/virtio-v1.1-csprd01.html>`_
1426222035eSMatan Azrad  * `QEMU: Vhost-user Protocol <https://qemu.weilnetz.de/doc/interop/vhost-user.html>`_
1436222035eSMatan Azrad
1446222035eSMatan Azrad
1456222035eSMatan AzradFeatures Table
1466222035eSMatan Azrad==============
1476222035eSMatan Azrad
1486222035eSMatan Azrad.. _table_vdpa_pmd_features:
1496222035eSMatan Azrad
1506222035eSMatan Azrad.. include:: overview_feature_table.txt
1516222035eSMatan Azrad
1526222035eSMatan Azrad.. Note::
1536222035eSMatan Azrad
1546222035eSMatan Azrad   Features marked with "P" are partially supported. Refer to the appropriate
1556222035eSMatan Azrad   driver guide in the following sections for details.
156