summaryrefslogtreecommitdiffstats
path: root/include/linux/mlx5/mlx5_ifc.h
diff options
context:
space:
mode:
authorDaniel Jurgens2015-11-19 16:12:26 +0100
committerSaeed Mahameed2017-02-06 17:17:25 +0100
commitf32f5bd2eb7e91a5090c06bbe1ed14bffbbda5d3 (patch)
tree297e2374d3fff18fb0296597fa58399af3278953 /include/linux/mlx5/mlx5_ifc.h
parentnet/mlx5: Fix static checker warnings (diff)
downloadkernel-qcow2-linux-f32f5bd2eb7e91a5090c06bbe1ed14bffbbda5d3.tar.gz
kernel-qcow2-linux-f32f5bd2eb7e91a5090c06bbe1ed14bffbbda5d3.tar.xz
kernel-qcow2-linux-f32f5bd2eb7e91a5090c06bbe1ed14bffbbda5d3.zip
net/mlx5: Configure cache line size for start and end padding
There is a hardware feature that will pad the start or end of a DMA to be cache line aligned to avoid RMWs on the last cache line. The default cache line size setting for this feature is 64B. This change configures the hardware to use 128B alignment on systems with 128B cache lines. In addition we lower bound MPWRQ stride by HCA cacheline in mlx5e, MPWRQ stride should be at least the HCA cacheline, the current default is 64B and in case HCA_CAP.cach_line_128byte capability is set, MPWRQ RX stride will automatically be aligned to 128B. Signed-off-by: Daniel Jurgens <danielj@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Diffstat (limited to 'include/linux/mlx5/mlx5_ifc.h')
-rw-r--r--include/linux/mlx5/mlx5_ifc.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/include/linux/mlx5/mlx5_ifc.h b/include/linux/mlx5/mlx5_ifc.h
index a919dfb920ae..cc8ae860cd45 100644
--- a/include/linux/mlx5/mlx5_ifc.h
+++ b/include/linux/mlx5/mlx5_ifc.h
@@ -804,10 +804,12 @@ struct mlx5_ifc_cmd_hca_cap_bits {
u8 reserved_at_150[0xa];
u8 log_max_ra_res_qp[0x6];
- u8 pad_cap[0x1];
+ u8 end_pad[0x1];
u8 cc_query_allowed[0x1];
u8 cc_modify_allowed[0x1];
- u8 reserved_at_163[0xd];
+ u8 start_pad[0x1];
+ u8 cache_line_128byte[0x1];
+ u8 reserved_at_163[0xb];
u8 gid_table_size[0x10];
u8 out_of_seq_cnt[0x1];