IB/mlx5: Implement callbacks for manipulating VFs
authorEli Cohen <eli@mellanox.com>
Fri, 11 Mar 2016 20:58:42 +0000 (22:58 +0200)
committerDoug Ledford <dledford@redhat.com>
Mon, 21 Mar 2016 21:13:14 +0000 (17:13 -0400)
commiteff901d30e6cebd940072637f112ce4d0090ac12
treea2105d1050701146ce1c7364721fb1bc35834b53
parent1f324bff9ba3db276f074169d5b4af9e9c117ba1
IB/mlx5: Implement callbacks for manipulating VFs

Implement the IB defined callbacks used to manipulate the policy for the
link state, set GUIDs or get statistics information. This functionality
is added into a new file that will be used to add any SRIOV related
functionality to the mlx5 IB layer.

The following callbacks have been added:

mlx5_ib_get_vf_config
mlx5_ib_set_vf_link_state
mlx5_ib_get_vf_stats
mlx5_ib_set_vf_guid

In addition, publish whether this device is based on a virtual function.

In mlx5 supported devices, virtual functions are implemented as vHCAs.
vHCAs have their own QP number space so it is possible that two vHCAs
will use a QP with the same number at the same time.

Signed-off-by: Eli Cohen <eli@mellanox.com>
Reviewed-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/mlx5/Makefile
drivers/infiniband/hw/mlx5/ib_virt.c [new file with mode: 0644]
drivers/infiniband/hw/mlx5/main.c
drivers/infiniband/hw/mlx5/mlx5_ib.h
include/linux/mlx5/driver.h
include/linux/mlx5/mlx5_ifc.h