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 102FreeBSD 103 Support FreeBSD. 104 105Linux 106 Support Linux. 107 108ARMv7 109 Support armv7 architecture. 110 111ARMv8 112 Support armv8a (64bit) architecture. 113 114Power8 115 Support PowerPC architecture. 116 117x86-32 118 Support 32bits x86 architecture. 119 120x86-64 121 Support 64bits x86 architecture. 122 123Usage doc 124 Documentation describes usage, In ``doc/guides/vdpadevs/``. 125 126Design doc 127 Documentation describes design. In ``doc/guides/vdpadevs/``. 128 129Perf doc 130 Documentation describes performance values, In ``doc/perf/``. 131 132.. note:: 133 134 Most of the features capabilities should be provided by the drivers via the 135 next vDPA operations: ``get_features`` and ``get_protocol_features``. 136 137 138References 139========== 140 141 * `OASIS: Virtual I/O Device (VIRTIO) Version 1.1 <https://docs.oasis-open.org/virtio/virtio/v1.1/csprd01/virtio-v1.1-csprd01.html>`_ 142 * `QEMU: Vhost-user Protocol <https://qemu.weilnetz.de/doc/interop/vhost-user.html>`_ 143 144 145Features Table 146============== 147 148.. _table_vdpa_pmd_features: 149 150.. include:: overview_feature_table.txt 151 152.. Note:: 153 154 Features marked with "P" are partially supported. Refer to the appropriate 155 driver guide in the following sections for details. 156