diff options
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx4/en_rx.c | 4 | ||||
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx4/fw.c | 1 | ||||
-rw-r--r-- | include/linux/mlx4/device.h | 1 |
3 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx4/en_rx.c b/drivers/net/ethernet/mellanox/mlx4/en_rx.c index 46a0df9afc3c..c47d73707f2c 100644 --- a/drivers/net/ethernet/mellanox/mlx4/en_rx.c +++ b/drivers/net/ethernet/mellanox/mlx4/en_rx.c | |||
@@ -806,6 +806,10 @@ static int mlx4_en_config_rss_qp(struct mlx4_en_priv *priv, int qpn, | |||
806 | qpn, ring->cqn, context); | 806 | qpn, ring->cqn, context); |
807 | context->db_rec_addr = cpu_to_be64(ring->wqres.db.dma); | 807 | context->db_rec_addr = cpu_to_be64(ring->wqres.db.dma); |
808 | 808 | ||
809 | /* Cancel FCS removal if FW allows */ | ||
810 | if (mdev->dev->caps.flags & MLX4_DEV_CAP_FLAG_FCS_KEEP) | ||
811 | context->param3 |= cpu_to_be32(1 << 29); | ||
812 | |||
809 | err = mlx4_qp_to_ready(mdev->dev, &ring->wqres.mtt, context, qp, state); | 813 | err = mlx4_qp_to_ready(mdev->dev, &ring->wqres.mtt, context, qp, state); |
810 | if (err) { | 814 | if (err) { |
811 | mlx4_qp_remove(mdev->dev, qp); | 815 | mlx4_qp_remove(mdev->dev, qp); |
diff --git a/drivers/net/ethernet/mellanox/mlx4/fw.c b/drivers/net/ethernet/mellanox/mlx4/fw.c index 7eb8ba822e97..ed452ddfe342 100644 --- a/drivers/net/ethernet/mellanox/mlx4/fw.c +++ b/drivers/net/ethernet/mellanox/mlx4/fw.c | |||
@@ -101,6 +101,7 @@ static void dump_dev_cap_flags(struct mlx4_dev *dev, u64 flags) | |||
101 | [25] = "Router support", | 101 | [25] = "Router support", |
102 | [30] = "IBoE support", | 102 | [30] = "IBoE support", |
103 | [32] = "Unicast loopback support", | 103 | [32] = "Unicast loopback support", |
104 | [34] = "FCS header control", | ||
104 | [38] = "Wake On LAN support", | 105 | [38] = "Wake On LAN support", |
105 | [40] = "UDP RSS support", | 106 | [40] = "UDP RSS support", |
106 | [41] = "Unicast VEP steering support", | 107 | [41] = "Unicast VEP steering support", |
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h index 53ef894bfa05..2366f94a095a 100644 --- a/include/linux/mlx4/device.h +++ b/include/linux/mlx4/device.h | |||
@@ -75,6 +75,7 @@ enum { | |||
75 | MLX4_DEV_CAP_FLAG_UD_MCAST = 1LL << 21, | 75 | MLX4_DEV_CAP_FLAG_UD_MCAST = 1LL << 21, |
76 | MLX4_DEV_CAP_FLAG_IBOE = 1LL << 30, | 76 | MLX4_DEV_CAP_FLAG_IBOE = 1LL << 30, |
77 | MLX4_DEV_CAP_FLAG_UC_LOOPBACK = 1LL << 32, | 77 | MLX4_DEV_CAP_FLAG_UC_LOOPBACK = 1LL << 32, |
78 | MLX4_DEV_CAP_FLAG_FCS_KEEP = 1LL << 34, | ||
78 | MLX4_DEV_CAP_FLAG_WOL = 1LL << 38, | 79 | MLX4_DEV_CAP_FLAG_WOL = 1LL << 38, |
79 | MLX4_DEV_CAP_FLAG_UDP_RSS = 1LL << 40, | 80 | MLX4_DEV_CAP_FLAG_UDP_RSS = 1LL << 40, |
80 | MLX4_DEV_CAP_FLAG_VEP_UC_STEER = 1LL << 41, | 81 | MLX4_DEV_CAP_FLAG_VEP_UC_STEER = 1LL << 41, |