diff options
author | Hadar Hen Zion <hadarh@mellanox.co.il> | 2012-07-05 00:03:45 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-07-07 19:23:05 -0400 |
commit | 8fcfb4db74352d3d447b7a559ad54f7577074d19 (patch) | |
tree | 3d60738ca8b0323189041305fb03128c839104bf /drivers/net/ethernet/mellanox/mlx4/cmd.c | |
parent | c96d97f4d127b61def87b3ee056bec20cfc265d1 (diff) |
net/mlx4_core: Add firmware commands to support device managed flow steering
Add support for firmware commands to attach/detach a new device managed
steering mode. Such network steering rules allow the user to provide an
L2/L3/L4 flow specification to the firmware and have the device to steer
traffic that matches that specification to the provided QP.
Signed-off-by: Hadar Hen Zion <hadarh@mellanox.co.il>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx4/cmd.c')
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx4/cmd.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx4/cmd.c b/drivers/net/ethernet/mellanox/mlx4/cmd.c index 842c8ce9494e..7e94987d030c 100644 --- a/drivers/net/ethernet/mellanox/mlx4/cmd.c +++ b/drivers/net/ethernet/mellanox/mlx4/cmd.c | |||
@@ -1080,6 +1080,25 @@ static struct mlx4_cmd_info cmd_info[] = { | |||
1080 | .verify = NULL, | 1080 | .verify = NULL, |
1081 | .wrapper = NULL | 1081 | .wrapper = NULL |
1082 | }, | 1082 | }, |
1083 | /* flow steering commands */ | ||
1084 | { | ||
1085 | .opcode = MLX4_QP_FLOW_STEERING_ATTACH, | ||
1086 | .has_inbox = true, | ||
1087 | .has_outbox = false, | ||
1088 | .out_is_imm = true, | ||
1089 | .encode_slave_id = false, | ||
1090 | .verify = NULL, | ||
1091 | .wrapper = mlx4_QP_FLOW_STEERING_ATTACH_wrapper | ||
1092 | }, | ||
1093 | { | ||
1094 | .opcode = MLX4_QP_FLOW_STEERING_DETACH, | ||
1095 | .has_inbox = false, | ||
1096 | .has_outbox = false, | ||
1097 | .out_is_imm = false, | ||
1098 | .encode_slave_id = false, | ||
1099 | .verify = NULL, | ||
1100 | .wrapper = mlx4_QP_FLOW_STEERING_DETACH_wrapper | ||
1101 | }, | ||
1083 | }; | 1102 | }; |
1084 | 1103 | ||
1085 | static int mlx4_master_process_vhcr(struct mlx4_dev *dev, int slave, | 1104 | static int mlx4_master_process_vhcr(struct mlx4_dev *dev, int slave, |