Steps: - Prepare net/mlx5 for code sharing. - Introduce new common lib for mlx5 devices. - Share code from net/mlx5 to common/mlx5.
v2: - Reorder patches for 2 serieses - this is the first one for common directory and vDPA preparation, the second will be sent later for vDPA new driver part. - Fix spelling and per patch complition issues. - moved to use claim_zero instead of pure asserts. - improve title names. v3: rebase. v4: Change devargs argument to get class name. Actually only the last 4 pathes here were changed. Matan Azrad (25): net/mlx5: separate DevX commands interface drivers: introduce mlx5 common library common/mlx5: share the mlx5 glue reference common/mlx5: share mlx5 PCI device detection common/mlx5: share mlx5 devices information common/mlx5: share CQ entry check common/mlx5: add query vDPA DevX capabilities 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 virtq commands common/mlx5: add support for DevX QP operations common/mlx5: allow type configuration for DevX RQT common/mlx5: add TIR field constants common/mlx5: add DevX command to modify RQT common/mlx5: get DevX capability for max RQT size net/mlx5: select driver by class device argument net/mlx5: separate Netlink command interface net/mlx5: reduce Netlink commands dependencies common/mlx5: share Netlink commands common/mlx5: support ROCE disable through Netlink MAINTAINERS | 1 + drivers/common/Makefile | 4 + drivers/common/meson.build | 2 +- drivers/common/mlx5/Makefile | 347 ++++ drivers/common/mlx5/meson.build | 210 ++ drivers/common/mlx5/mlx5_common.c | 332 +++ drivers/common/mlx5/mlx5_common.h | 223 ++ drivers/common/mlx5/mlx5_common_utils.h | 20 + drivers/common/mlx5/mlx5_devx_cmds.c | 1530 ++++++++++++++ drivers/common/mlx5/mlx5_devx_cmds.h | 351 ++++ 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 | 2542 +++++++++++++++++++++++ drivers/common/mlx5/rte_common_mlx5_version.map | 51 + drivers/net/mlx5/Makefile | 307 +-- drivers/net/mlx5/meson.build | 257 +-- drivers/net/mlx5/mlx5.c | 197 +- drivers/net/mlx5/mlx5.h | 326 +-- drivers/net/mlx5/mlx5_defs.h | 8 - drivers/net/mlx5/mlx5_devx_cmds.c | 969 --------- 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 | 1888 ----------------- 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 +- mk/rte.app.mk | 1 + 49 files changed, 9286 insertions(+), 7000 deletions(-) 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 -- 1.8.3.1