]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ice: read TSPLL registers again before reporting status
authorJacob Keller <jacob.e.keller@intel.com>
Tue, 24 Jun 2025 00:29:58 +0000 (17:29 -0700)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Thu, 26 Jun 2025 15:36:59 +0000 (08:36 -0700)
After programming the TSPLL, re-read the registers before reporting status.
This ensures the debug log message will show what was actually programmed,
rather than relying on a cached value.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/ice/ice_tspll.c

index e2f07d60fcdc14fded4851568ca1ff77499a180d..440aba817b9c4bc1a4ff90dd992f6a72533b449c 100644 (file)
@@ -239,8 +239,15 @@ static int ice_tspll_cfg_e82x(struct ice_hw *hw, enum ice_tspll_freq clk_freq,
                return -EBUSY;
        }
 
-       ice_tspll_log_cfg(hw, dw24.ts_pll_enable, clk_src, clk_freq, true,
-                         true);
+       err = ice_read_cgu_reg(hw, ICE_CGU_R9, &dw9.val);
+       if (err)
+               return err;
+       err = ice_read_cgu_reg(hw, ICE_CGU_R24, &dw24.val);
+       if (err)
+               return err;
+
+       ice_tspll_log_cfg(hw, dw24.ts_pll_enable, dw24.time_ref_sel,
+                         dw9.time_ref_freq_sel, true, false);
 
        return 0;
 }
@@ -433,8 +440,15 @@ static int ice_tspll_cfg_e825c(struct ice_hw *hw, enum ice_tspll_freq clk_freq,
                return -EBUSY;
        }
 
-       ice_tspll_log_cfg(hw, dw23.ts_pll_enable, clk_src, clk_freq, true,
-                         true);
+       err = ice_read_cgu_reg(hw, ICE_CGU_R9, &dw9.val);
+       if (err)
+               return err;
+       err = ice_read_cgu_reg(hw, ICE_CGU_R23, &dw23.val);
+       if (err)
+               return err;
+
+       ice_tspll_log_cfg(hw, dw23.ts_pll_enable, dw23.time_ref_sel,
+                         dw9.time_ref_freq_sel, true, true);
 
        return 0;
 }