aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-06-20 18:39:24 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-06-20 18:39:24 -0400
commitb3f4256fe0682143883ce6903e4646a03943f792 (patch)
tree3f090af16d721dd3d088a96a6defb0637ae74f76 /include/linux
parent044f620ac65d0d90727cdbd0c058e4d150d62ddc (diff)
parente61ef2416b0b92828512b6cfcd0104a02b6431fe (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: IB/mlx4: Make sure inline data segments don't cross a 64 byte boundary IB/mlx4: Handle FW command interface rev 3 IB/mlx4: Handle buffer wraparound in __mlx4_ib_cq_clean() IB/mlx4: Get rid of max_inline_data calculation IB/mlx4: Handle new FW requirement for send request prefetching IB/mlx4: Fix warning in rounding up queue sizes IB/mlx4: Fix handling of wq->tail for send completions
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/mlx4/cmd.h1
-rw-r--r--include/linux/mlx4/device.h13
-rw-r--r--include/linux/mlx4/qp.h4
3 files changed, 12 insertions, 6 deletions
diff --git a/include/linux/mlx4/cmd.h b/include/linux/mlx4/cmd.h
index 4fb552d12f7a..7d1eaa97de13 100644
--- a/include/linux/mlx4/cmd.h
+++ b/include/linux/mlx4/cmd.h
@@ -54,6 +54,7 @@ enum {
54 MLX4_CMD_INIT_PORT = 0x9, 54 MLX4_CMD_INIT_PORT = 0x9,
55 MLX4_CMD_CLOSE_PORT = 0xa, 55 MLX4_CMD_CLOSE_PORT = 0xa,
56 MLX4_CMD_QUERY_HCA = 0xb, 56 MLX4_CMD_QUERY_HCA = 0xb,
57 MLX4_CMD_QUERY_PORT = 0x43,
57 MLX4_CMD_SET_PORT = 0xc, 58 MLX4_CMD_SET_PORT = 0xc,
58 MLX4_CMD_ACCESS_DDR = 0x2e, 59 MLX4_CMD_ACCESS_DDR = 0x2e,
59 MLX4_CMD_MAP_ICM = 0xffa, 60 MLX4_CMD_MAP_ICM = 0xffa,
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h
index 8c5f8fd86841..b372f5910fc1 100644
--- a/include/linux/mlx4/device.h
+++ b/include/linux/mlx4/device.h
@@ -41,6 +41,7 @@
41 41
42enum { 42enum {
43 MLX4_FLAG_MSI_X = 1 << 0, 43 MLX4_FLAG_MSI_X = 1 << 0,
44 MLX4_FLAG_OLD_PORT_CMDS = 1 << 1,
44}; 45};
45 46
46enum { 47enum {
@@ -131,10 +132,10 @@ enum {
131struct mlx4_caps { 132struct mlx4_caps {
132 u64 fw_ver; 133 u64 fw_ver;
133 int num_ports; 134 int num_ports;
134 int vl_cap; 135 int vl_cap[MLX4_MAX_PORTS + 1];
135 int mtu_cap; 136 int mtu_cap[MLX4_MAX_PORTS + 1];
136 int gid_table_len; 137 int gid_table_len[MLX4_MAX_PORTS + 1];
137 int pkey_table_len; 138 int pkey_table_len[MLX4_MAX_PORTS + 1];
138 int local_ca_ack_delay; 139 int local_ca_ack_delay;
139 int num_uars; 140 int num_uars;
140 int bf_reg_size; 141 int bf_reg_size;
@@ -174,7 +175,7 @@ struct mlx4_caps {
174 u32 page_size_cap; 175 u32 page_size_cap;
175 u32 flags; 176 u32 flags;
176 u16 stat_rate_support; 177 u16 stat_rate_support;
177 u8 port_width_cap; 178 u8 port_width_cap[MLX4_MAX_PORTS + 1];
178}; 179};
179 180
180struct mlx4_buf_list { 181struct mlx4_buf_list {
@@ -322,7 +323,7 @@ int mlx4_srq_alloc(struct mlx4_dev *dev, u32 pdn, struct mlx4_mtt *mtt,
322void mlx4_srq_free(struct mlx4_dev *dev, struct mlx4_srq *srq); 323void mlx4_srq_free(struct mlx4_dev *dev, struct mlx4_srq *srq);
323int mlx4_srq_arm(struct mlx4_dev *dev, struct mlx4_srq *srq, int limit_watermark); 324int mlx4_srq_arm(struct mlx4_dev *dev, struct mlx4_srq *srq, int limit_watermark);
324 325
325int mlx4_INIT_PORT(struct mlx4_dev *dev, struct mlx4_init_port_param *param, int port); 326int mlx4_INIT_PORT(struct mlx4_dev *dev, int port);
326int mlx4_CLOSE_PORT(struct mlx4_dev *dev, int port); 327int mlx4_CLOSE_PORT(struct mlx4_dev *dev, int port);
327 328
328int mlx4_multicast_attach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16]); 329int mlx4_multicast_attach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16]);
diff --git a/include/linux/mlx4/qp.h b/include/linux/mlx4/qp.h
index 9eeb61adf6a3..10c57d279144 100644
--- a/include/linux/mlx4/qp.h
+++ b/include/linux/mlx4/qp.h
@@ -269,6 +269,10 @@ struct mlx4_wqe_data_seg {
269 __be64 addr; 269 __be64 addr;
270}; 270};
271 271
272enum {
273 MLX4_INLINE_ALIGN = 64,
274};
275
272struct mlx4_wqe_inline_seg { 276struct mlx4_wqe_inline_seg {
273 __be32 byte_count; 277 __be32 byte_count;
274}; 278};