From: Leon Romanovsky <leonro@xxxxxxxxxxxx> Changelog: v2: * Rebased on latest wip/jgg-rdma-next branch, commit a94dae867c56 * Fixed wrong setting of pm_state field in mlx5 conversion patch * Removed DC support for now v1: https://lore.kernel.org/linux-rdma/20200523132243.817936-1-leon@xxxxxxxxxx * Fixed compatibility issue of "old" kernel vs. "new" rdma-core. This is handled in extra patch. * Improved comments and commit messages after feedback from Yishai. * Added Mark Z. ROB tags v0: https://lore.kernel.org/linux-rdma/20200520082919.440939-1-leon@xxxxxxxxxx ---------------------------------------------------------------------- Hi, This is driver part of the RDMA-CM ECE series [1]. According to the IBTA, ECE data is completely vendor specific, so this series extends mlx5_ib create_qp and modify_qp structs with extra field to pass ECE options to/from the application. Thanks [1] https://lore.kernel.org/linux-rdma/20200413141538.935574-1-leon@xxxxxxxxxx Leon Romanovsky (9): net/mlx5: Add ability to read and write ECE options RDMA/mlx5: Get ECE options from FW during create QP RDMA/mlx5: Set ECE options during QP create RDMA/mlx5: Use direct modify QP implementation RDMA/mlx5: Remove manually crafted QP context the query call RDMA/mlx5: Convert modify QP to use MLX5_SET macros RDMA/mlx5: Advertise ECE support RDMA/mlx5: Set ECE options during modify QP RDMA/mlx5: Return ECE data after modify QP drivers/infiniband/hw/mlx5/main.c | 3 + drivers/infiniband/hw/mlx5/qp.c | 478 +++++++++++++++++------------- drivers/infiniband/hw/mlx5/qp.h | 6 +- drivers/infiniband/hw/mlx5/qpc.c | 44 ++- include/linux/mlx5/mlx5_ifc.h | 24 +- include/linux/mlx5/qp.h | 66 ----- include/uapi/rdma/mlx5-abi.h | 9 +- 7 files changed, 333 insertions(+), 297 deletions(-) -- 2.26.2