From: Leon Romanovsky <leonro@xxxxxxxxxx> Changelog: v1: * Renamed _mlx5_rescan_driver to be mlx5_rescan_driver_locked like in other parts of the mlx5 driver. * Renamed MLX5_INTERFACE_PROTOCOL_VDPA to tbe MLX5_INTERFACE_PROTOCOL_VNET as a preparation to coming series from Eli C. * Some small naming renames in mlx5_vdpa. * Refactored adev index code to make Parav's SF series to apply more easily. * Fixed devlink reload bug that caused to lost TCP connection. v0: https://lore.kernel.org/lkml/20201026111849.1035786-1-leon@xxxxxxxxxx/ -------------------------------------------------------------- Hi, This patch set converts mlx5 driver to use auxiliary bus [1]. In this series, we are connecting three subsystems (VDPA, netdev and RDMA) through mlx5_core PCI driver. That driver is responsible to create proper devices based on supported firmware. First four patches are preparitions and fixes that were spotted during code development, rest is the conversion itself. Thanks [1] https://lore.kernel.org/lkml/20201023003338.1285642-1-david.m.ertman@xxxxxxxxx Leon Romanovsky (11): net/mlx5: Don't skip vport check net/mlx5: Properly convey driver version to firmware net/mlx5_core: Clean driver version and name vdpa/mlx5: Make hardware definitions visible to all mlx5 devices net/mlx5: Register mlx5 devices to auxiliary virtual bus vdpa/mlx5: Connect mlx5_vdpa to auxiliary bus net/mlx5e: Connect ethernet part to auxiliary bus RDMA/mlx5: Convert mlx5_ib to use auxiliary bus net/mlx5: Delete custom device management logic net/mlx5: Simplify eswitch mode check RDMA/mlx5: Remove IB representors dead code drivers/infiniband/hw/mlx5/counters.c | 7 - drivers/infiniband/hw/mlx5/ib_rep.c | 113 ++-- drivers/infiniband/hw/mlx5/ib_rep.h | 45 +- drivers/infiniband/hw/mlx5/main.c | 148 +++-- drivers/infiniband/hw/mlx5/mlx5_ib.h | 4 +- .../net/ethernet/mellanox/mlx5/core/Kconfig | 1 + drivers/net/ethernet/mellanox/mlx5/core/dev.c | 567 ++++++++++++------ .../net/ethernet/mellanox/mlx5/core/devlink.c | 4 +- .../ethernet/mellanox/mlx5/core/en_ethtool.c | 4 +- .../net/ethernet/mellanox/mlx5/core/en_main.c | 135 ++--- .../net/ethernet/mellanox/mlx5/core/en_rep.c | 42 +- .../net/ethernet/mellanox/mlx5/core/en_rep.h | 6 +- .../net/ethernet/mellanox/mlx5/core/en_tc.c | 8 +- .../mellanox/mlx5/core/esw/devlink_port.c | 2 +- .../net/ethernet/mellanox/mlx5/core/eswitch.c | 28 +- .../mellanox/mlx5/core/eswitch_offloads.c | 6 + .../mellanox/mlx5/core/ipoib/ethtool.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/lag.c | 58 +- .../net/ethernet/mellanox/mlx5/core/main.c | 50 +- .../ethernet/mellanox/mlx5/core/mlx5_core.h | 33 +- drivers/vdpa/mlx5/Makefile | 2 +- drivers/vdpa/mlx5/net/main.c | 76 --- drivers/vdpa/mlx5/net/mlx5_vnet.c | 53 +- drivers/vdpa/mlx5/net/mlx5_vnet.h | 24 - include/linux/mlx5/driver.h | 34 +- include/linux/mlx5/eswitch.h | 8 +- .../linux/mlx5/mlx5_ifc_vdpa.h | 6 +- 27 files changed, 818 insertions(+), 648 deletions(-) delete mode 100644 drivers/vdpa/mlx5/net/main.c delete mode 100644 drivers/vdpa/mlx5/net/mlx5_vnet.h rename drivers/vdpa/mlx5/core/mlx5_vdpa_ifc.h => include/linux/mlx5/mlx5_ifc_vdpa.h (97%) -- 2.28.0