drivers: introduce vDPA class
authorMatan Azrad <matan@mellanox.com>
Thu, 9 Jan 2020 11:00:15 +0000 (11:00 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Mon, 13 Jan 2020 22:28:00 +0000 (23:28 +0100)
The vDPA (vhost data path acceleration) drivers provide support for
the vDPA operations introduced by the rte_vhost library.

Any driver which provides the vDPA operations should be moved\added to
the vdpa class under drivers/vdpa/.

Create the general files for vDPA class in drivers and in documentation.

The management tree for vDPA drivers is
git://dpdk.org/next/dpdk-next-virtio.

Signed-off-by: Matan Azrad <matan@mellanox.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
MAINTAINERS
doc/guides/index.rst
doc/guides/vdpadevs/index.rst [new file with mode: 0644]
drivers/Makefile
drivers/meson.build
drivers/vdpa/Makefile [new file with mode: 0644]
drivers/vdpa/meson.build [new file with mode: 0644]

index 4395d8d..d52f71e 100644 (file)
@@ -1089,6 +1089,11 @@ F: doc/guides/compressdevs/zlib.rst
 F: doc/guides/compressdevs/features/zlib.ini
 
 
+vDPA Drivers
+------------
+T: git://dpdk.org/next/dpdk-next-virtio
+
+
 Eventdev Drivers
 ----------------
 M: Jerin Jacob <jerinj@marvell.com>
index 8a1601b..988c6ea 100644 (file)
@@ -19,6 +19,7 @@ DPDK documentation
    bbdevs/index
    cryptodevs/index
    compressdevs/index
+   vdpadevs/index
    eventdevs/index
    rawdevs/index
    mempool/index
diff --git a/doc/guides/vdpadevs/index.rst b/doc/guides/vdpadevs/index.rst
new file mode 100644 (file)
index 0000000..caae5ea
--- /dev/null
@@ -0,0 +1,12 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright 2019 Mellanox Technologies, Ltd
+
+vDPA Device Drivers
+===================
+
+The following are a list of vDPA (vHost Data Path Acceleration) device drivers,
+which can be used from an application through vhost API.
+
+.. toctree::
+    :maxdepth: 2
+    :numbered:
index 7d5da5d..46374ca 100644 (file)
@@ -18,6 +18,8 @@ DIRS-$(CONFIG_RTE_LIBRTE_PMD_QAT) += common/qat
 DEPDIRS-common/qat := bus mempool
 DIRS-$(CONFIG_RTE_LIBRTE_COMPRESSDEV) += compress
 DEPDIRS-compress := bus mempool
+DIRS-$(CONFIG_RTE_LIBRTE_VHOST) += vdpa
+DEPDIRS-vdpa := common bus mempool
 DIRS-$(CONFIG_RTE_LIBRTE_EVENTDEV) += event
 DEPDIRS-event := common bus mempool net
 DIRS-$(CONFIG_RTE_LIBRTE_RAWDEV) += raw
index 4b17662..3f8749d 100644 (file)
@@ -13,6 +13,7 @@ dpdk_driver_classes = ['common',
               'net',     # depends on common, bus, mempool and raw.
               'crypto',  # depends on common, bus and mempool (net in future).
               'compress', # depends on common, bus, mempool.
+              'vdpa',    # depends on common, bus and mempool.
               'event',   # depends on common, bus, mempool and net.
               'baseband'] # depends on common and bus.
 
diff --git a/drivers/vdpa/Makefile b/drivers/vdpa/Makefile
new file mode 100644 (file)
index 0000000..aee51ab
--- /dev/null
@@ -0,0 +1,8 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright 2019 Mellanox Technologies, Ltd
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+# DIRS-$(<configuration>) += <directory>
+
+include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/drivers/vdpa/meson.build b/drivers/vdpa/meson.build
new file mode 100644 (file)
index 0000000..e5065aa
--- /dev/null
@@ -0,0 +1,8 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright 2019 Mellanox Technologies, Ltd
+
+drivers = []
+std_deps = ['bus_pci', 'kvargs']
+std_deps += ['vhost']
+config_flag_fmt = 'RTE_LIBRTE_@0@_PMD'
+driver_name_fmt = 'rte_pmd_@0@'