]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net/mlx5: Move crosststamp setup into helper function
authorCarolina Jubran <cjubran@nvidia.com>
Mon, 16 Mar 2026 13:36:06 +0000 (15:36 +0200)
committerJakub Kicinski <kuba@kernel.org>
Thu, 19 Mar 2026 02:05:14 +0000 (19:05 -0700)
Move the crosststamp registration logic into a dedicated helper,
mlx5_init_crosststamp().

This prepares the code for a follow-up patch around PTM handling.

Signed-off-by: Carolina Jubran <cjubran@nvidia.com>
Reviewed-by: Shahar Shitrit <shshitrit@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20260316133607.8738-2-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c

index bd4e042077afd2b4e55a7ebcbab30ba4286f24d1..3322814819ea94a6a1cfa9aa88551698563037f1 100644 (file)
@@ -1301,6 +1301,24 @@ static void mlx5_init_timer_max_freq_adjustment(struct mlx5_core_dev *mdev)
                        min(S32_MAX, 1 << log_max_freq_adjustment);
 }
 
+static void mlx5_init_crosststamp(struct mlx5_core_dev *mdev,
+                                 bool expose_cycles, struct mlx5_clock *clock)
+{
+#if defined(CONFIG_X86)
+       if (!boot_cpu_has(X86_FEATURE_ART))
+               return;
+
+       if (!MLX5_CAP_MCAM_REG3(mdev, mtptm) ||
+           !MLX5_CAP_MCAM_REG3(mdev, mtctr))
+               return;
+
+       clock->ptp_info.getcrosststamp = mlx5_ptp_getcrosststamp;
+       if (expose_cycles)
+               clock->ptp_info.getcrosscycles = mlx5_ptp_getcrosscycles;
+
+#endif /* CONFIG_X86 */
+}
+
 static void mlx5_init_timer_clock(struct mlx5_core_dev *mdev)
 {
        struct mlx5_clock *clock = mdev->clock;
@@ -1315,15 +1333,7 @@ static void mlx5_init_timer_clock(struct mlx5_core_dev *mdev)
        expose_cycles = !MLX5_CAP_GEN(mdev, disciplined_fr_counter) ||
                        !mlx5_real_time_mode(mdev);
 
-#ifdef CONFIG_X86
-       if (MLX5_CAP_MCAM_REG3(mdev, mtptm) &&
-           MLX5_CAP_MCAM_REG3(mdev, mtctr) && boot_cpu_has(X86_FEATURE_ART)) {
-               clock->ptp_info.getcrosststamp = mlx5_ptp_getcrosststamp;
-               if (expose_cycles)
-                       clock->ptp_info.getcrosscycles =
-                               mlx5_ptp_getcrosscycles;
-       }
-#endif /* CONFIG_X86 */
+       mlx5_init_crosststamp(mdev, expose_cycles, clock);
 
        if (expose_cycles)
                clock->ptp_info.getcyclesx64 = mlx5_ptp_getcyclesx;