diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-10-19 15:29:23 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-10-19 15:29:23 -0400 |
| commit | 2eb7f910c158fd675ab33aff67904512779996e8 (patch) | |
| tree | cc5b453afad998da001ee3611f358b7bdc218981 /include/linux/mlx5 | |
| parent | 1f6075f99073a8b5ec9649ae8c0bf2e06fdd42f1 (diff) | |
| parent | 7b909bb49ac204bfd2e628707db37beb490dbc5c (diff) | |
Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
Pull infiniband/RDMA updates from Roland Dreier:
- large set of iSER initiator improvements
- hardware driver fixes for cxgb4, mlx5 and ocrdma
- small fixes to core midlayer
* tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (47 commits)
RDMA/cxgb4: Fix ntuple calculation for ipv6 and remove duplicate line
RDMA/cxgb4: Add missing neigh_release in find_route
RDMA/cxgb4: Take IPv6 into account for best_mtu and set_emss
RDMA/cxgb4: Make c4iw_wr_log_size_order static
IB/core: Fix XRC race condition in ib_uverbs_open_qp
IB/core: Clear AH attr variable to prevent garbage data
RDMA/ocrdma: Save the bit environment, spare unncessary parenthesis
RDMA/ocrdma: The kernel has a perfectly good BIT() macro - use it
RDMA/ocrdma: Don't memset() buffers we just allocated with kzalloc()
RDMA/ocrdma: Remove a unused-label warning
RDMA/ocrdma: Convert kernel VA to PA for mmap in user
RDMA/ocrdma: Get vlan tag from ib_qp_attrs
RDMA/ocrdma: Add default GID at index 0
IB/mlx5, iser, isert: Add Signature API additions
Target/iser: Centralize ib_sig_domain setting
IB/iser: Centralize ib_sig_domain settings
IB/mlx5: Use extended internal signature layout
IB/iser: Set IP_CSUM as default guard type
IB/iser: Remove redundant assignment
IB/mlx5: Use enumerations for PI copy mask
...
Diffstat (limited to 'include/linux/mlx5')
| -rw-r--r-- | include/linux/mlx5/qp.h | 35 |
1 files changed, 27 insertions, 8 deletions
diff --git a/include/linux/mlx5/qp.h b/include/linux/mlx5/qp.h index 7c4c0f1f5805..3fa075daeb1d 100644 --- a/include/linux/mlx5/qp.h +++ b/include/linux/mlx5/qp.h | |||
| @@ -40,6 +40,15 @@ | |||
| 40 | #define MLX5_SIG_WQE_SIZE (MLX5_SEND_WQE_BB * 5) | 40 | #define MLX5_SIG_WQE_SIZE (MLX5_SEND_WQE_BB * 5) |
| 41 | #define MLX5_DIF_SIZE 8 | 41 | #define MLX5_DIF_SIZE 8 |
| 42 | #define MLX5_STRIDE_BLOCK_OP 0x400 | 42 | #define MLX5_STRIDE_BLOCK_OP 0x400 |
| 43 | #define MLX5_CPY_GRD_MASK 0xc0 | ||
| 44 | #define MLX5_CPY_APP_MASK 0x30 | ||
| 45 | #define MLX5_CPY_REF_MASK 0x0f | ||
| 46 | #define MLX5_BSF_INC_REFTAG (1 << 6) | ||
| 47 | #define MLX5_BSF_INL_VALID (1 << 15) | ||
| 48 | #define MLX5_BSF_REFRESH_DIF (1 << 14) | ||
| 49 | #define MLX5_BSF_REPEAT_BLOCK (1 << 7) | ||
| 50 | #define MLX5_BSF_APPTAG_ESCAPE 0x1 | ||
| 51 | #define MLX5_BSF_APPREF_ESCAPE 0x2 | ||
| 43 | 52 | ||
| 44 | enum mlx5_qp_optpar { | 53 | enum mlx5_qp_optpar { |
| 45 | MLX5_QP_OPTPAR_ALT_ADDR_PATH = 1 << 0, | 54 | MLX5_QP_OPTPAR_ALT_ADDR_PATH = 1 << 0, |
| @@ -287,6 +296,22 @@ struct mlx5_wqe_inline_seg { | |||
| 287 | __be32 byte_count; | 296 | __be32 byte_count; |
| 288 | }; | 297 | }; |
| 289 | 298 | ||
| 299 | enum mlx5_sig_type { | ||
| 300 | MLX5_DIF_CRC = 0x1, | ||
| 301 | MLX5_DIF_IPCS = 0x2, | ||
| 302 | }; | ||
| 303 | |||
| 304 | struct mlx5_bsf_inl { | ||
| 305 | __be16 vld_refresh; | ||
| 306 | __be16 dif_apptag; | ||
| 307 | __be32 dif_reftag; | ||
| 308 | u8 sig_type; | ||
| 309 | u8 rp_inv_seed; | ||
| 310 | u8 rsvd[3]; | ||
| 311 | u8 dif_inc_ref_guard_check; | ||
| 312 | __be16 dif_app_bitmask_check; | ||
| 313 | }; | ||
| 314 | |||
| 290 | struct mlx5_bsf { | 315 | struct mlx5_bsf { |
| 291 | struct mlx5_bsf_basic { | 316 | struct mlx5_bsf_basic { |
| 292 | u8 bsf_size_sbs; | 317 | u8 bsf_size_sbs; |
| @@ -310,14 +335,8 @@ struct mlx5_bsf { | |||
| 310 | __be32 w_tfs_psv; | 335 | __be32 w_tfs_psv; |
| 311 | __be32 m_tfs_psv; | 336 | __be32 m_tfs_psv; |
| 312 | } ext; | 337 | } ext; |
| 313 | struct mlx5_bsf_inl { | 338 | struct mlx5_bsf_inl w_inl; |
| 314 | __be32 w_inl_vld; | 339 | struct mlx5_bsf_inl m_inl; |
| 315 | __be32 w_rsvd; | ||
| 316 | __be64 w_block_format; | ||
| 317 | __be32 m_inl_vld; | ||
| 318 | __be32 m_rsvd; | ||
| 319 | __be64 m_block_format; | ||
| 320 | } inl; | ||
| 321 | }; | 340 | }; |
| 322 | 341 | ||
| 323 | struct mlx5_klm { | 342 | struct mlx5_klm { |
