{net, IB}/mlx5: Reorganize driver file layout

This patch organizes mlx5 driver file layout to better reflect mlx5
modularity and allow future separation between EN, IB and shared code

The new structure:
 * drivers/net/ethernet/mellanox/mlx5/*       - core HW/PCI driver logic
 * drivers/net/ethernet/mellanox/mlx5/en/*    - ethernet
 * drivers/net/ethernet/mellanox/mlx5/fs/*    - flow steering
 * drivers/net/ethernet/mellanox/mlx5/sriov/* - SR-IOV and E-Switch
 * drivers/net/ethernet/mellanox/mlx5/lib/*   - common mlx5 commands and API library

In future submissions, we will shrink the "lib" directory to the code
related to both subsystems only, while IB part will be moved to
drivers/infiniband/hw/mlx5, and EN will be moved to "en" directory.
Such separation will make this library (shared) code to be lean and minimal,
and help avoid future conflicts between IB and net submissions.

The proposed structure allows us to remove include/linux/mlx5,
which belongs solely to Mellanox's devices and don't need to
be exposed in common linux include directory.

The following change goes together with update of MAINTAINERS file to
more granular maintainership roles:
 * drivers/net/ethernet/mellanox/mlx5/*       - Saeed, Matan and Leon
 * drivers/net/ethernet/mellanox/mlx5/en/*    - Saeed
 * drivers/net/ethernet/mellanox/mlx5/fs/*    - Saeed, Matan and Leon
 * drivers/net/ethernet/mellanox/mlx5/sriov/* - Saeed
 * drivers/net/ethernet/mellanox/mlx5/lib/*   - Saeed, Matan and Leon
 * include/uapi/rdma/mlx5-abi.h               - Matan and Leon

Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
78 files changed