From: Matan Azrad <matan@mellanox.com>
To: Maxime Coquelin <maxime.coquelin@redhat.com>,
Tiwei Bie <tiwei.bie@intel.com>,
Zhihong Wang <zhihong.wang@intel.com>,
Xiao Wang <xiao.w.wang@intel.com>
Cc: Ferruh Yigit <ferruh.yigit@intel.com>,
dev@dpdk.org, Thomas Monjalon <thomas@monjalon.net>,
Andrew Rybchenko <arybchenko@solarflare.com>
Subject: [dpdk-dev] [PATCH v2 2/3] doc: add vDPA feature table
Date: Thu, 9 Jan 2020 11:00:16 +0000 [thread overview]
Message-ID: <1578567617-3541-3-git-send-email-matan@mellanox.com> (raw)
In-Reply-To: <1578567617-3541-1-git-send-email-matan@mellanox.com>
Add vDPA devices features table and explanation.
Any vDPA driver can add its own supported features by ading a new ini
file to the features directory in doc/guides/vdpadevs/features.
Signed-off-by: Matan Azrad <matan@mellanox.com>
---
doc/guides/conf.py | 5 +++
doc/guides/vdpadevs/features/default.ini | 50 +++++++++++++++++++++
doc/guides/vdpadevs/features_overview.rst | 74 +++++++++++++++++++++++++++++++
doc/guides/vdpadevs/index.rst | 1 +
4 files changed, 130 insertions(+)
create mode 100644 doc/guides/vdpadevs/features/default.ini
create mode 100644 doc/guides/vdpadevs/features_overview.rst
diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index 0892c06..c368fa5 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -401,6 +401,11 @@ def setup(app):
'Features',
'Features availability in compression drivers',
'Feature')
+ table_file = dirname(__file__) + '/vdpadevs/overview_feature_table.txt'
+ generate_overview_table(table_file, 1,
+ 'Features',
+ 'Features availability in vDPA drivers',
+ 'Feature')
if LooseVersion(sphinx_version) < LooseVersion('1.3.1'):
print('Upgrade sphinx to version >= 1.3.1 for '
diff --git a/doc/guides/vdpadevs/features/default.ini b/doc/guides/vdpadevs/features/default.ini
new file mode 100644
index 0000000..518e4f1
--- /dev/null
+++ b/doc/guides/vdpadevs/features/default.ini
@@ -0,0 +1,50 @@
+;
+; Features of a default vDPA driver.
+;
+; This file defines the features that are valid for inclusion in
+; the other driver files and also the order that they appear in
+; the features table in the documentation. The feature description
+; string should not exceed feature_str_len defined in conf.py.
+;
+[Features]
+csum =
+guest csum =
+mac =
+gso =
+guest tso4 =
+guest tso6 =
+ecn =
+ufo =
+host tso4 =
+host tso6 =
+mrg rxbuf =
+ctrl vq =
+ctrl rx =
+any layout =
+guest announce =
+mq =
+version 1 =
+log all =
+indirect desc =
+event idx =
+mtu =
+in_order =
+IOMMU platform =
+packed =
+proto mq =
+proto log shmfd =
+proto rarp =
+proto reply ack =
+proto host notifier =
+proto pagefault =
+BSD nic_uio =
+Linux VFIO =
+Other kdrv =
+ARMv7 =
+ARMv8 =
+Power8 =
+x86-32 =
+x86-64 =
+Usage doc =
+Design doc =
+Perf doc =
\ No newline at end of file
diff --git a/doc/guides/vdpadevs/features_overview.rst b/doc/guides/vdpadevs/features_overview.rst
new file mode 100644
index 0000000..3ce1db1
--- /dev/null
+++ b/doc/guides/vdpadevs/features_overview.rst
@@ -0,0 +1,74 @@
+.. SPDX-License-Identifier: BSD-3-Clause
+ Copyright 2019 Mellanox Technologies, Ltd
+
+Overview of vDPA drivers features
+=================================
+
+This section explains the supported features that are listed in the table below.
+
+ * csum - Device can handle packets with partial checksum.
+ * guest csum - Guest can handle packets with partial checksum.
+ * mac - Device has given MAC address.
+ * gso - Device can handle packets with any GSO type.
+ * guest tso4 - Guest can receive TSOv4.
+ * guest tso6 - Guest can receive TSOv6.
+ * ecn - Device can receive TSO with ECN.
+ * ufo - Device can receive UFO.
+ * host tso4 - Device can receive TSOv4.
+ * host tso6 - Device can receive TSOv6.
+ * mrg rxbuf - Guest can merge receive buffers.
+ * ctrl vq - Control channel is available.
+ * ctrl rx - Control channel RX mode support.
+ * any layout - Device can handle any descriptor layout.
+ * guest announce - Guest can send gratuitous packets.
+ * mq - Device supports Receive Flow Steering.
+ * version 1 - v1.0 compliant.
+ * log all - Device can log all write descriptors (live migration).
+ * indirect desc - Indirect buffer descriptors support.
+ * event idx - Support for avail_idx and used_idx fields.
+ * mtu - Host can advise the guest with its maximum supported MTU.
+ * in_order - Device can use descriptors in ring order.
+ * IOMMU platform - Device support IOMMU addresses.
+ * packed - Device support packed virtio queues.
+ * proto mq - Support the number of queues query.
+ * proto log shmfd - Guest support setting log base.
+ * proto rarp - Host can broadcast a fake RARP after live migration.
+ * proto reply ack - Host support requested operation status ack.
+ * proto host notifier - Host can register memory region based host notifiers.
+ * proto pagefault - Slave expose page-fault FD for migration process.
+ * BSD nic_uio - BSD ``nic_uio`` module supported.
+ * Linux VFIO - Works with ``vfio-pci`` kernel module.
+ * Other kdrv - Kernel module other than above ones supported.
+ * ARMv7 - Support armv7 architecture.
+ * ARMv8 - Support armv8a (64bit) architecture.
+ * Power8 - Support PowerPC architecture.
+ * x86-32 - Support 32bits x86 architecture.
+ * x86-64 - Support 64bits x86 architecture.
+ * Usage doc - Documentation describes usage, In ``doc/guides/vdpadevs/``.
+ * Design doc - Documentation describes design. In ``doc/guides/vdpadevs/``.
+ * Perf doc - Documentation describes performance values, In ``doc/perf/``.
+
+.. note::
+
+ Most of the features capabilities should be provided by the drivers via the
+ next vDPA operations: ``get_features`` and ``get_protocol_features``.
+
+
+Useful links
+============
+
+ * `OASIS: Virtual I/O Device (VIRTIO) Version 1.1 <https://docs.oasis-open.org/virtio/virtio/v1.1/csprd01/virtio-v1.1-csprd01>`_.
+ * `QEMU: Vhost-user Protocol <https://qemu.weilnetz.de/doc/interop/vhost-user>`_.
+
+
+Features table
+==============
+
+.. _table_vdpa_pmd_features:
+
+.. include:: overview_feature_table.txt
+
+.. Note::
+
+ Features marked with "P" are partially supported. Refer to the appropriate
+ driver guide in the following sections for details.
diff --git a/doc/guides/vdpadevs/index.rst b/doc/guides/vdpadevs/index.rst
index d69dc91..89e2b03 100644
--- a/doc/guides/vdpadevs/index.rst
+++ b/doc/guides/vdpadevs/index.rst
@@ -11,3 +11,4 @@ which can be used from an application through vhost API.
:maxdepth: 2
:numbered:
+ features_overview
--
1.8.3.1
next prev parent reply other threads:[~2020-01-09 11:00 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-25 15:19 [dpdk-dev] [PATCH v1 0/3] Introduce new class for vDPA device drivers Matan Azrad
2019-12-25 15:19 ` [dpdk-dev] [PATCH v1 1/3] drivers: introduce vDPA class Matan Azrad
2020-01-07 17:32 ` Maxime Coquelin
2020-01-08 21:28 ` Thomas Monjalon
2020-01-09 8:00 ` Maxime Coquelin
2019-12-25 15:19 ` [dpdk-dev] [PATCH v1 2/3] doc: add vDPA feature table Matan Azrad
2020-01-07 17:39 ` Maxime Coquelin
2020-01-08 5:28 ` Tiwei Bie
2020-01-08 7:20 ` Andrew Rybchenko
2020-01-08 10:42 ` Matan Azrad
2020-01-08 13:11 ` Andrew Rybchenko
2020-01-08 17:01 ` Matan Azrad
2020-01-09 2:15 ` Tiwei Bie
2020-01-09 8:08 ` Matan Azrad
2019-12-25 15:19 ` [dpdk-dev] [PATCH v1 3/3] drivers: move ifc driver to the vDPA class Matan Azrad
2020-01-07 18:17 ` Maxime Coquelin
2020-01-07 7:57 ` [dpdk-dev] [PATCH v1 0/3] Introduce new class for vDPA device drivers Matan Azrad
2020-01-08 5:44 ` Xu, Rosen
2020-01-08 10:45 ` Matan Azrad
2020-01-08 12:39 ` Xu, Rosen
2020-01-08 12:58 ` Thomas Monjalon
2020-01-09 2:27 ` Xu, Rosen
2020-01-09 8:41 ` Thomas Monjalon
2020-01-09 9:23 ` Maxime Coquelin
2020-01-09 9:49 ` Xu, Rosen
2020-01-09 10:42 ` Maxime Coquelin
2020-01-10 2:40 ` Xu, Rosen
2020-01-09 10:42 ` Maxime Coquelin
2020-01-09 10:53 ` Xu, Rosen
2020-01-09 11:34 ` Matan Azrad
2020-01-10 2:38 ` Xu, Rosen
2020-01-10 9:21 ` Thomas Monjalon
2020-01-10 14:18 ` Xu, Rosen
2020-01-10 16:27 ` Thomas Monjalon
2020-01-09 11:00 ` [dpdk-dev] [PATCH v2 " Matan Azrad
2020-01-09 11:00 ` [dpdk-dev] [PATCH v2 1/3] drivers: introduce vDPA class Matan Azrad
2020-01-09 11:00 ` Matan Azrad [this message]
2020-01-10 18:26 ` [dpdk-dev] [PATCH v2 2/3] doc: add vDPA feature table Thomas Monjalon
2020-01-13 22:40 ` Thomas Monjalon
2020-01-09 11:00 ` [dpdk-dev] [PATCH v2 3/3] drivers: move ifc driver to the vDPA class Matan Azrad
2020-01-09 17:25 ` Matan Azrad
2020-01-10 1:55 ` Wang, Haiyue
2020-01-10 9:07 ` Matan Azrad
2020-01-10 9:13 ` Thomas Monjalon
2020-01-10 12:31 ` Wang, Haiyue
2020-01-10 12:34 ` Maxime Coquelin
2020-01-10 12:59 ` Thomas Monjalon
2020-01-10 19:17 ` Kevin Traynor
2020-01-13 22:57 ` Thomas Monjalon
2020-01-13 23:08 ` [dpdk-dev] [PATCH v2 0/3] Introduce new class for vDPA device drivers Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1578567617-3541-3-git-send-email-matan@mellanox.com \
--to=matan@mellanox.com \
--cc=arybchenko@solarflare.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=maxime.coquelin@redhat.com \
--cc=thomas@monjalon.net \
--cc=tiwei.bie@intel.com \
--cc=xiao.w.wang@intel.com \
--cc=zhihong.wang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).