aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mlx4
diff options
context:
space:
mode:
authorJack Morgenstein <jackm@dev.mellanox.co.il>2014-03-12 06:00:38 -0400
committerDavid S. Miller <davem@davemloft.net>2014-03-12 15:57:13 -0400
commit9cd593529c8652785bc9962acc79b6b176741f99 (patch)
tree1e056dcc04d4ab3c95a20d3e2757352b6c040b7e /include/linux/mlx4
parent6ee51a4e866bbb0921180b457ed16cd172859346 (diff)
mlx4_core: For RoCE, allow slaves to set the GID entry at that slave's index
For IB transport, the host determines the slave GIDs. For ETH (RoCE), however, the slave's GID is determined by the IP address that the slave itself assigns to the ETH device used by RoCE. In this case, the slave must be able to write its GIDs to the HCA gid table (at the GID indices that slave "owns"). This commit adds processing for the SET_PORT_GID_TABLE opcode modifier for the SET_PORT command wrapper (so that slaves may modify their GIDS for RoCE). Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il> Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/mlx4')
-rw-r--r--include/linux/mlx4/device.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h
index fbe6cda00ba7..e4853650679d 100644
--- a/include/linux/mlx4/device.h
+++ b/include/linux/mlx4/device.h
@@ -1184,8 +1184,11 @@ int set_and_calc_slave_port_state(struct mlx4_dev *dev, int slave, u8 port, int
1184 1184
1185void mlx4_put_slave_node_guid(struct mlx4_dev *dev, int slave, __be64 guid); 1185void mlx4_put_slave_node_guid(struct mlx4_dev *dev, int slave, __be64 guid);
1186__be64 mlx4_get_slave_node_guid(struct mlx4_dev *dev, int slave); 1186__be64 mlx4_get_slave_node_guid(struct mlx4_dev *dev, int slave);
1187int mlx4_get_slave_from_roce_gid(struct mlx4_dev *dev, int port, u8 *gid, int *slave_id); 1187
1188int mlx4_get_roce_gid_from_slave(struct mlx4_dev *dev, int port, int slave_id, u8 *gid); 1188int mlx4_get_slave_from_roce_gid(struct mlx4_dev *dev, int port, u8 *gid,
1189 int *slave_id);
1190int mlx4_get_roce_gid_from_slave(struct mlx4_dev *dev, int port, int slave_id,
1191 u8 *gid);
1189 1192
1190int mlx4_FLOW_STEERING_IB_UC_QP_RANGE(struct mlx4_dev *dev, u32 min_range_qpn, 1193int mlx4_FLOW_STEERING_IB_UC_QP_RANGE(struct mlx4_dev *dev, u32 min_range_qpn,
1191 u32 max_range_qpn); 1194 u32 max_range_qpn);