From: Grzegorz Nitka <grzegorz.ni...@intel.com> Block HW write access for the driver while the device is in reset to avoid potential race condition and access to the PTP HW in non-nominal state which could lead to undesired effects
Signed-off-by: Grzegorz Nitka <grzegorz.ni...@intel.com> Co-developed-by: Karol Kolacinski <karol.kolacin...@intel.com> Signed-off-by: Karol Kolacinski <karol.kolacin...@intel.com> Signed-off-by: Sergey Temerkhanov <sergey.temerkha...@intel.com> Fixes: 4aad5335969f ("ice: add individual interrupt allocation") Reviewed-by: Przemek Kitszel <przemyslaw.kits...@intel.com> --- drivers/net/ethernet/intel/ice/ice_ptp.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/ethernet/intel/ice/ice_ptp.c b/drivers/net/ethernet/intel/ice/ice_ptp.c index 85b19e94e2ed..1f365bd6f525 100644 --- a/drivers/net/ethernet/intel/ice/ice_ptp.c +++ b/drivers/net/ethernet/intel/ice/ice_ptp.c @@ -1420,6 +1420,10 @@ void ice_ptp_link_change(struct ice_pf *pf, u8 port, bool linkup) /* Update cached link status for this port immediately */ ptp_port->link_up = linkup; + /* Skip HW writes if reset is in progress */ + if (pf->hw.reset_ongoing) + return; + switch (ice_get_phy_model(hw)) { case ICE_PHY_E810: /* Do not reconfigure E810 PHY */ -- 2.43.0