]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
mlx5/core: deduplicate {mlx5_,}eq_update_ci()
authorCaleb Sander Mateos <csander@purestorage.com>
Thu, 7 Nov 2024 18:30:52 +0000 (11:30 -0700)
committerJakub Kicinski <kuba@kernel.org>
Mon, 11 Nov 2024 22:13:44 +0000 (14:13 -0800)
The logic of eq_update_ci() is duplicated in mlx5_eq_update_ci(). The
only additional work done by mlx5_eq_update_ci() is to increment
eq->cons_index. Call eq_update_ci() from mlx5_eq_update_ci() to avoid
the duplication.

Signed-off-by: Caleb Sander Mateos <csander@purestorage.com>
Reviewed-by: Parav Pandit <parav@nvidia.com>
Acked-by: Tariq Toukan <tariqt@nvidia.com>
Link: https://patch.msgid.link/20241107183054.2443218-2-csander@purestorage.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/eq.c

index 3fd2091c11c8c1041f01a7081f8c38f088e7923c..2b229b6226c6a77f0b65a88e4ae62ed0283bebaa 100644 (file)
@@ -801,15 +801,8 @@ EXPORT_SYMBOL(mlx5_eq_get_eqe);
 
 void mlx5_eq_update_ci(struct mlx5_eq *eq, u32 cc, bool arm)
 {
-       __be32 __iomem *addr = eq->doorbell + (arm ? 0 : 2);
-       u32 val;
-
        eq->cons_index += cc;
-       val = (eq->cons_index & 0xffffff) | (eq->eqn << 24);
-
-       __raw_writel((__force u32)cpu_to_be32(val), addr);
-       /* We still want ordering, just not swabbing, so add a barrier */
-       wmb();
+       eq_update_ci(eq, arm);
 }
 EXPORT_SYMBOL(mlx5_eq_update_ci);