diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-03 19:57:19 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-03 19:57:19 -0400 |
commit | 877f075aac900288ce2e6a64075cceff09210a7e (patch) | |
tree | 2bcf23e903403a2bfa3c6fac14d1334614e4d0f1 /include/linux/mlx5/device.h | |
parent | 3cf59142bcd391680beb6932838fe09a73947705 (diff) | |
parent | f7eaa7ed8fd46542275cf249cd934a366f6556bb (diff) |
Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
Pull infiniband updates from Roland Dreier:
"Main batch of InfiniBand/RDMA changes for 3.15:
- The biggest change is core API extensions and mlx5 low-level driver
support for handling DIF/DIX-style protection information, and the
addition of PI support to the iSER initiator. Target support will
be arriving shortly through the SCSI target tree.
- A nice simplification to the "umem" memory pinning library now that
we have chained sg lists. Kudos to Yishai Hadas for realizing our
code didn't have to be so crazy.
- Another nice simplification to the sg wrappers used by qib, ipath
and ehca to handle their mapping of memory to adapter.
- The usual batch of fixes to bugs found by static checkers etc.
from intrepid people like Dan Carpenter and Yann Droneaud.
- A large batch of cxgb4, ocrdma, qib driver updates"
* tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (102 commits)
RDMA/ocrdma: Unregister inet notifier when unloading ocrdma
RDMA/ocrdma: Fix warnings about pointer <-> integer casts
RDMA/ocrdma: Code clean-up
RDMA/ocrdma: Display FW version
RDMA/ocrdma: Query controller information
RDMA/ocrdma: Support non-embedded mailbox commands
RDMA/ocrdma: Handle CQ overrun error
RDMA/ocrdma: Display proper value for max_mw
RDMA/ocrdma: Use non-zero tag in SRQ posting
RDMA/ocrdma: Memory leak fix in ocrdma_dereg_mr()
RDMA/ocrdma: Increment abi version count
RDMA/ocrdma: Update version string
be2net: Add abi version between be2net and ocrdma
RDMA/ocrdma: ABI versioning between ocrdma and be2net
RDMA/ocrdma: Allow DPP QP creation
RDMA/ocrdma: Read ASIC_ID register to select asic_gen
RDMA/ocrdma: SQ and RQ doorbell offset clean up
RDMA/ocrdma: EQ full catastrophe avoidance
RDMA/cxgb4: Disable DSGL use by default
RDMA/cxgb4: rx_data() needs to hold the ep mutex
...
Diffstat (limited to 'include/linux/mlx5/device.h')
-rw-r--r-- | include/linux/mlx5/device.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/include/linux/mlx5/device.h b/include/linux/mlx5/device.h index 817a6fae6d2c..407bdb67fd4f 100644 --- a/include/linux/mlx5/device.h +++ b/include/linux/mlx5/device.h | |||
@@ -48,6 +48,8 @@ enum { | |||
48 | MLX5_MAX_COMMANDS = 32, | 48 | MLX5_MAX_COMMANDS = 32, |
49 | MLX5_CMD_DATA_BLOCK_SIZE = 512, | 49 | MLX5_CMD_DATA_BLOCK_SIZE = 512, |
50 | MLX5_PCI_CMD_XPORT = 7, | 50 | MLX5_PCI_CMD_XPORT = 7, |
51 | MLX5_MKEY_BSF_OCTO_SIZE = 4, | ||
52 | MLX5_MAX_PSVS = 4, | ||
51 | }; | 53 | }; |
52 | 54 | ||
53 | enum { | 55 | enum { |
@@ -116,6 +118,7 @@ enum { | |||
116 | MLX5_MKEY_MASK_START_ADDR = 1ull << 6, | 118 | MLX5_MKEY_MASK_START_ADDR = 1ull << 6, |
117 | MLX5_MKEY_MASK_PD = 1ull << 7, | 119 | MLX5_MKEY_MASK_PD = 1ull << 7, |
118 | MLX5_MKEY_MASK_EN_RINVAL = 1ull << 8, | 120 | MLX5_MKEY_MASK_EN_RINVAL = 1ull << 8, |
121 | MLX5_MKEY_MASK_EN_SIGERR = 1ull << 9, | ||
119 | MLX5_MKEY_MASK_BSF_EN = 1ull << 12, | 122 | MLX5_MKEY_MASK_BSF_EN = 1ull << 12, |
120 | MLX5_MKEY_MASK_KEY = 1ull << 13, | 123 | MLX5_MKEY_MASK_KEY = 1ull << 13, |
121 | MLX5_MKEY_MASK_QPN = 1ull << 14, | 124 | MLX5_MKEY_MASK_QPN = 1ull << 14, |
@@ -555,6 +558,23 @@ struct mlx5_cqe64 { | |||
555 | u8 op_own; | 558 | u8 op_own; |
556 | }; | 559 | }; |
557 | 560 | ||
561 | struct mlx5_sig_err_cqe { | ||
562 | u8 rsvd0[16]; | ||
563 | __be32 expected_trans_sig; | ||
564 | __be32 actual_trans_sig; | ||
565 | __be32 expected_reftag; | ||
566 | __be32 actual_reftag; | ||
567 | __be16 syndrome; | ||
568 | u8 rsvd22[2]; | ||
569 | __be32 mkey; | ||
570 | __be64 err_offset; | ||
571 | u8 rsvd30[8]; | ||
572 | __be32 qpn; | ||
573 | u8 rsvd38[2]; | ||
574 | u8 signature; | ||
575 | u8 op_own; | ||
576 | }; | ||
577 | |||
558 | struct mlx5_wqe_srq_next_seg { | 578 | struct mlx5_wqe_srq_next_seg { |
559 | u8 rsvd0[2]; | 579 | u8 rsvd0[2]; |
560 | __be16 next_wqe_index; | 580 | __be16 next_wqe_index; |
@@ -936,4 +956,27 @@ enum { | |||
936 | MLX_EXT_PORT_CAP_FLAG_EXTENDED_PORT_INFO = 1 << 0 | 956 | MLX_EXT_PORT_CAP_FLAG_EXTENDED_PORT_INFO = 1 << 0 |
937 | }; | 957 | }; |
938 | 958 | ||
959 | struct mlx5_allocate_psv_in { | ||
960 | struct mlx5_inbox_hdr hdr; | ||
961 | __be32 npsv_pd; | ||
962 | __be32 rsvd_psv0; | ||
963 | }; | ||
964 | |||
965 | struct mlx5_allocate_psv_out { | ||
966 | struct mlx5_outbox_hdr hdr; | ||
967 | u8 rsvd[8]; | ||
968 | __be32 psv_idx[4]; | ||
969 | }; | ||
970 | |||
971 | struct mlx5_destroy_psv_in { | ||
972 | struct mlx5_inbox_hdr hdr; | ||
973 | __be32 psv_number; | ||
974 | u8 rsvd[4]; | ||
975 | }; | ||
976 | |||
977 | struct mlx5_destroy_psv_out { | ||
978 | struct mlx5_outbox_hdr hdr; | ||
979 | u8 rsvd[8]; | ||
980 | }; | ||
981 | |||
939 | #endif /* MLX5_DEVICE_H */ | 982 | #endif /* MLX5_DEVICE_H */ |