Fix incorrect PHY timestamp extraction for ETH56G.
It's better to use FIELD_PREP() than manual shift.

Fixes: 7cab44f1c35f ("ice: Introduce ETH56G PHY model for E825C products")
Reviewed-by: Przemek Kitszel <przemyslaw.kits...@intel.com>
Reviewed-by: Simon Horman <ho...@kernel.org>
Signed-off-by: Przemyslaw Korba <przemyslaw.ko...@intel.com>
---
Changelog
v2:
remove legal footer
v1:
https://lore.kernel.org/intel-wired-lan/20241107113257.466286-1-przemyslaw.ko...@intel.com
---
 drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 3 ++-
 drivers/net/ethernet/intel/ice/ice_ptp_hw.h | 5 ++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_ptp_hw.c 
b/drivers/net/ethernet/intel/ice/ice_ptp_hw.c
index 75c68b0325e7..3d45e4ed90b6 100644
--- a/drivers/net/ethernet/intel/ice/ice_ptp_hw.c
+++ b/drivers/net/ethernet/intel/ice/ice_ptp_hw.c
@@ -1553,7 +1553,8 @@ static int ice_read_ptp_tstamp_eth56g(struct ice_hw *hw, 
u8 port, u8 idx,
         * lower 8 bits in the low register, and the upper 32 bits in the high
         * register.
         */
-       *tstamp = ((u64)hi) << TS_PHY_HIGH_S | ((u64)lo & TS_PHY_LOW_M);
+       *tstamp = FIELD_PREP(TS_PHY_HIGH_M, hi) |
+                 FIELD_PREP(TS_PHY_LOW_M, lo);
 
        return 0;
 }
diff --git a/drivers/net/ethernet/intel/ice/ice_ptp_hw.h 
b/drivers/net/ethernet/intel/ice/ice_ptp_hw.h
index 6cedc1a906af..4c8b84571344 100644
--- a/drivers/net/ethernet/intel/ice/ice_ptp_hw.h
+++ b/drivers/net/ethernet/intel/ice/ice_ptp_hw.h
@@ -663,9 +663,8 @@ static inline u64 ice_get_base_incval(struct ice_hw *hw)
 #define TS_HIGH_M                      0xFF
 #define TS_HIGH_S                      32
 
-#define TS_PHY_LOW_M                   0xFF
-#define TS_PHY_HIGH_M                  0xFFFFFFFF
-#define TS_PHY_HIGH_S                  8
+#define TS_PHY_LOW_M                   GENMASK(7, 0)
+#define TS_PHY_HIGH_M                  GENMASK_ULL(39, 8)
 
 #define BYTES_PER_IDX_ADDR_L_U         8
 #define BYTES_PER_IDX_ADDR_L           4

base-commit: 182ff3dabe8f127049c09660346cad492bcc0ceb
-- 
2.31.1

Reply via email to