[dpdk-dev] [PATCH v1 00/38] Introduce mlx5 vDPA driver
Matan Azrad
matan at mellanox.com
Mon Jan 20 18:02:32 CET 2020
Steps:
- Prepare net/mlx5 for code sharing.
- Introduce new common lib for mlx5 devices.
- Share code from net/mlx5 to common/mlx5.
- Introduce vDPA driver for Mellanox devices.
Matan Azrad (38):
net/mlx5: separate DevX commands interface
mlx5: prepare common library
mlx5: share the mlx5 glue reference
mlx5: share mlx5 PCI device detection
mlx5: share mlx5 devices information
drivers: introduce mlx5 vDPA driver
common/mlx5: expose vDPA DevX capabilities
vdpa/mlx5: support queues number operation
vdpa/mlx5: support features get operations
common/mlx5: glue null memory region allocation
common/mlx5: support DevX indirect mkey creation
common/mlx5: glue event queue query
common/mlx5: glue event interrupt commands
common/mlx5: glue UAR allocation
common/mlx5: add DevX command to create CQ
common/mlx5: glue VAR allocation
common/mlx5: add DevX virtio emulation commands
vdpa/mlx5: prepare memory regions
mlx5: share CQ entry check
vdpa/mlx5: prepare completion queues
vdpa/mlx5: handle completions
vdpa/mlx5: prepare virtio queues
vdpa/mlx5: support stateless offloads
common/mlx5: allow type configuration for DevX RQT
common/mlx5: add TIR fields constants
common/mlx5: add DevX command to modify RQT
common/mlx5: get DevX capability for max RQT size
vdpa/mlx5: add basic steering configurations
vdpa/mlx5: support queue state operation
vdpa/mlx5: map doorbell
vdpa/mlx5: support live migration
vdpa/mlx5: support close and config operations
mlx5: skip probing according to the vDPA mode
net/mlx5: separate Netlink commands interface
net/mlx5: reduce Netlink commands dependencies
mlx5: share Netlink commands
common/mlx5: support ROCE disable through Netlink
vdpa/mlx5: disable ROCE
MAINTAINERS | 9 +
config/common_base | 5 +
doc/guides/rel_notes/release_20_02.rst | 5 +
doc/guides/vdpadevs/features/mlx5.ini | 27 +
doc/guides/vdpadevs/index.rst | 1 +
doc/guides/vdpadevs/mlx5.rst | 89 +
drivers/common/Makefile | 4 +
drivers/common/meson.build | 2 +-
drivers/common/mlx5/Makefile | 350 ++++
drivers/common/mlx5/meson.build | 210 +++
drivers/common/mlx5/mlx5_common.c | 332 ++++
drivers/common/mlx5/mlx5_common.h | 214 +++
drivers/common/mlx5/mlx5_common_utils.h | 20 +
drivers/common/mlx5/mlx5_devx_cmds.c | 1363 ++++++++++++++
drivers/common/mlx5/mlx5_devx_cmds.h | 322 ++++
drivers/common/mlx5/mlx5_glue.c | 1296 ++++++++++++++
drivers/common/mlx5/mlx5_glue.h | 305 ++++
drivers/common/mlx5/mlx5_nl.c | 1699 ++++++++++++++++++
drivers/common/mlx5/mlx5_nl.h | 63 +
drivers/common/mlx5/mlx5_prm.h | 2165 +++++++++++++++++++++++
drivers/common/mlx5/rte_common_mlx5_version.map | 48 +
drivers/meson.build | 8 +-
drivers/net/mlx5/Makefile | 307 +---
drivers/net/mlx5/meson.build | 257 +--
drivers/net/mlx5/mlx5.c | 196 +-
drivers/net/mlx5/mlx5.h | 324 +---
drivers/net/mlx5/mlx5_defs.h | 8 -
drivers/net/mlx5/mlx5_devx_cmds.c | 967 ----------
drivers/net/mlx5/mlx5_ethdev.c | 161 +-
drivers/net/mlx5/mlx5_flow.c | 12 +-
drivers/net/mlx5/mlx5_flow.h | 3 +-
drivers/net/mlx5/mlx5_flow_dv.c | 12 +-
drivers/net/mlx5/mlx5_flow_meter.c | 2 +
drivers/net/mlx5/mlx5_flow_verbs.c | 7 +-
drivers/net/mlx5/mlx5_glue.c | 1150 ------------
drivers/net/mlx5/mlx5_glue.h | 264 ---
drivers/net/mlx5/mlx5_mac.c | 16 +-
drivers/net/mlx5/mlx5_mr.c | 3 +-
drivers/net/mlx5/mlx5_nl.c | 1402 ---------------
drivers/net/mlx5/mlx5_prm.h | 1883 --------------------
drivers/net/mlx5/mlx5_rss.c | 2 +-
drivers/net/mlx5/mlx5_rxmode.c | 12 +-
drivers/net/mlx5/mlx5_rxq.c | 7 +-
drivers/net/mlx5/mlx5_rxtx.c | 7 +-
drivers/net/mlx5/mlx5_rxtx.h | 46 +-
drivers/net/mlx5/mlx5_rxtx_vec.c | 5 +-
drivers/net/mlx5/mlx5_rxtx_vec.h | 3 +-
drivers/net/mlx5/mlx5_rxtx_vec_altivec.h | 5 +-
drivers/net/mlx5/mlx5_rxtx_vec_neon.h | 5 +-
drivers/net/mlx5/mlx5_rxtx_vec_sse.h | 5 +-
drivers/net/mlx5/mlx5_stats.c | 5 +-
drivers/net/mlx5/mlx5_txq.c | 7 +-
drivers/net/mlx5/mlx5_utils.h | 79 +-
drivers/net/mlx5/mlx5_vlan.c | 137 +-
drivers/vdpa/Makefile | 2 +
drivers/vdpa/meson.build | 3 +-
drivers/vdpa/mlx5/Makefile | 43 +
drivers/vdpa/mlx5/meson.build | 34 +
drivers/vdpa/mlx5/mlx5_vdpa.c | 539 ++++++
drivers/vdpa/mlx5/mlx5_vdpa.h | 294 +++
drivers/vdpa/mlx5/mlx5_vdpa_cq.c | 283 +++
drivers/vdpa/mlx5/mlx5_vdpa_lm.c | 132 ++
drivers/vdpa/mlx5/mlx5_vdpa_mem.c | 351 ++++
drivers/vdpa/mlx5/mlx5_vdpa_steer.c | 288 +++
drivers/vdpa/mlx5/mlx5_vdpa_utils.h | 20 +
drivers/vdpa/mlx5/mlx5_vdpa_virtq.c | 397 +++++
drivers/vdpa/mlx5/rte_pmd_mlx5_vdpa_version.map | 3 +
mk/rte.app.mk | 14 +-
68 files changed, 11239 insertions(+), 7000 deletions(-)
create mode 100644 doc/guides/vdpadevs/features/mlx5.ini
create mode 100644 doc/guides/vdpadevs/mlx5.rst
create mode 100644 drivers/common/mlx5/Makefile
create mode 100644 drivers/common/mlx5/meson.build
create mode 100644 drivers/common/mlx5/mlx5_common.c
create mode 100644 drivers/common/mlx5/mlx5_common.h
create mode 100644 drivers/common/mlx5/mlx5_common_utils.h
create mode 100644 drivers/common/mlx5/mlx5_devx_cmds.c
create mode 100644 drivers/common/mlx5/mlx5_devx_cmds.h
create mode 100644 drivers/common/mlx5/mlx5_glue.c
create mode 100644 drivers/common/mlx5/mlx5_glue.h
create mode 100644 drivers/common/mlx5/mlx5_nl.c
create mode 100644 drivers/common/mlx5/mlx5_nl.h
create mode 100644 drivers/common/mlx5/mlx5_prm.h
create mode 100644 drivers/common/mlx5/rte_common_mlx5_version.map
delete mode 100644 drivers/net/mlx5/mlx5_devx_cmds.c
delete mode 100644 drivers/net/mlx5/mlx5_glue.c
delete mode 100644 drivers/net/mlx5/mlx5_glue.h
delete mode 100644 drivers/net/mlx5/mlx5_nl.c
delete mode 100644 drivers/net/mlx5/mlx5_prm.h
create mode 100644 drivers/vdpa/mlx5/Makefile
create mode 100644 drivers/vdpa/mlx5/meson.build
create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa.c
create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa.h
create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_cq.c
create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_lm.c
create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_mem.c
create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_steer.c
create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_utils.h
create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_virtq.c
create mode 100644 drivers/vdpa/mlx5/rte_pmd_mlx5_vdpa_version.map
--
1.8.3.1
More information about the dev
mailing list