aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/mlx4/fw.c
diff options
context:
space:
mode:
authorSean Hefty <sean.hefty@intel.com>2011-06-02 12:01:33 -0400
committerRoland Dreier <roland@purestorage.com>2011-10-13 12:43:03 -0400
commit012a8ff577f95211c6ffd3b77a94c34ebae009b6 (patch)
tree7d1e8d3ca131cc46ca12e879c4554870e0be76f2 /drivers/net/mlx4/fw.c
parent2622e18ef407a8e8e3ddc3d6f0c77b756c493798 (diff)
IB/mlx4: Add support for XRC domains
Support creating and destroying XRC domains. Any sharing of the XRCD is managed above the low-level driver. Signed-off-by: Sean Hefty <sean.hefty@intel.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/net/mlx4/fw.c')
-rw-r--r--drivers/net/mlx4/fw.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/mlx4/fw.c b/drivers/net/mlx4/fw.c
index 7eb8ba822e97..875838b8799c 100644
--- a/drivers/net/mlx4/fw.c
+++ b/drivers/net/mlx4/fw.c
@@ -204,6 +204,8 @@ int mlx4_QUERY_DEV_CAP(struct mlx4_dev *dev, struct mlx4_dev_cap *dev_cap)
204#define QUERY_DEV_CAP_MAX_MCG_OFFSET 0x63 204#define QUERY_DEV_CAP_MAX_MCG_OFFSET 0x63
205#define QUERY_DEV_CAP_RSVD_PD_OFFSET 0x64 205#define QUERY_DEV_CAP_RSVD_PD_OFFSET 0x64
206#define QUERY_DEV_CAP_MAX_PD_OFFSET 0x65 206#define QUERY_DEV_CAP_MAX_PD_OFFSET 0x65
207#define QUERY_DEV_CAP_RSVD_XRC_OFFSET 0x66
208#define QUERY_DEV_CAP_MAX_XRC_OFFSET 0x67
207#define QUERY_DEV_CAP_MAX_COUNTERS_OFFSET 0x68 209#define QUERY_DEV_CAP_MAX_COUNTERS_OFFSET 0x68
208#define QUERY_DEV_CAP_RDMARC_ENTRY_SZ_OFFSET 0x80 210#define QUERY_DEV_CAP_RDMARC_ENTRY_SZ_OFFSET 0x80
209#define QUERY_DEV_CAP_QPC_ENTRY_SZ_OFFSET 0x82 211#define QUERY_DEV_CAP_QPC_ENTRY_SZ_OFFSET 0x82
@@ -318,6 +320,10 @@ int mlx4_QUERY_DEV_CAP(struct mlx4_dev *dev, struct mlx4_dev_cap *dev_cap)
318 dev_cap->reserved_pds = field >> 4; 320 dev_cap->reserved_pds = field >> 4;
319 MLX4_GET(field, outbox, QUERY_DEV_CAP_MAX_PD_OFFSET); 321 MLX4_GET(field, outbox, QUERY_DEV_CAP_MAX_PD_OFFSET);
320 dev_cap->max_pds = 1 << (field & 0x3f); 322 dev_cap->max_pds = 1 << (field & 0x3f);
323 MLX4_GET(field, outbox, QUERY_DEV_CAP_RSVD_XRC_OFFSET);
324 dev_cap->reserved_xrcds = field >> 4;
325 MLX4_GET(field, outbox, QUERY_DEV_CAP_MAX_PD_OFFSET);
326 dev_cap->max_xrcds = 1 << (field & 0x1f);
321 327
322 MLX4_GET(size, outbox, QUERY_DEV_CAP_RDMARC_ENTRY_SZ_OFFSET); 328 MLX4_GET(size, outbox, QUERY_DEV_CAP_RDMARC_ENTRY_SZ_OFFSET);
323 dev_cap->rdmarc_entry_sz = size; 329 dev_cap->rdmarc_entry_sz = size;