diff options
Diffstat (limited to 'include/linux/mlx4')
| -rw-r--r-- | include/linux/mlx4/device.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h index 6a8f002b8ed3..7f5c9ee42f96 100644 --- a/include/linux/mlx4/device.h +++ b/include/linux/mlx4/device.h | |||
| @@ -70,6 +70,29 @@ enum { | |||
| 70 | MLX4_MFUNC_EQE_MASK = (MLX4_MFUNC_MAX_EQES - 1) | 70 | MLX4_MFUNC_EQE_MASK = (MLX4_MFUNC_MAX_EQES - 1) |
| 71 | }; | 71 | }; |
| 72 | 72 | ||
| 73 | /* Driver supports 2 diffrent device methods to manage traffic steering: | ||
| 74 | * - B0 steering mode - Common low level API for ib and (if supported) eth. | ||
| 75 | * - A0 steering mode - Limited low level API for eth. In case of IB, | ||
| 76 | * B0 mode is in use. | ||
| 77 | */ | ||
| 78 | enum { | ||
| 79 | MLX4_STEERING_MODE_A0, | ||
| 80 | MLX4_STEERING_MODE_B0 | ||
| 81 | }; | ||
| 82 | |||
| 83 | static inline const char *mlx4_steering_mode_str(int steering_mode) | ||
| 84 | { | ||
| 85 | switch (steering_mode) { | ||
| 86 | case MLX4_STEERING_MODE_A0: | ||
| 87 | return "A0 steering"; | ||
| 88 | |||
| 89 | case MLX4_STEERING_MODE_B0: | ||
| 90 | return "B0 steering"; | ||
| 91 | default: | ||
| 92 | return "Unrecognize steering mode"; | ||
| 93 | } | ||
| 94 | } | ||
| 95 | |||
| 73 | enum { | 96 | enum { |
| 74 | MLX4_DEV_CAP_FLAG_RC = 1LL << 0, | 97 | MLX4_DEV_CAP_FLAG_RC = 1LL << 0, |
| 75 | MLX4_DEV_CAP_FLAG_UC = 1LL << 1, | 98 | MLX4_DEV_CAP_FLAG_UC = 1LL << 1, |
| @@ -295,6 +318,7 @@ struct mlx4_caps { | |||
| 295 | int num_amgms; | 318 | int num_amgms; |
| 296 | int reserved_mcgs; | 319 | int reserved_mcgs; |
| 297 | int num_qp_per_mgm; | 320 | int num_qp_per_mgm; |
| 321 | int steering_mode; | ||
| 298 | int num_pds; | 322 | int num_pds; |
| 299 | int reserved_pds; | 323 | int reserved_pds; |
| 300 | int max_xrcds; | 324 | int max_xrcds; |
