ice: reschedule ice_ptp_wait_for_offset_valid during reset
authorJacob Keller <jacob.e.keller@intel.com>
Mon, 5 Dec 2022 19:52:53 +0000 (11:52 -0800)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Thu, 8 Dec 2022 21:15:03 +0000 (13:15 -0800)
commit95af1f1c4c9f9f08bbdb40812248b7bc5868a1da
treec67a2b45026775df646972ad57670a65b1c7d32e
parentf029a34394e7239f4111507b402ab234f990ec94
ice: reschedule ice_ptp_wait_for_offset_valid during reset

If the ice_ptp_wait_for_offest_valid function is scheduled to run while the
driver is resetting, it will exit without completing calibration. The work
function gets scheduled by ice_ptp_port_phy_restart which will be called as
part of the reset recovery process.

It is possible for the first execution to occur before the driver has
completely cleared its resetting flags. Ensure calibration completes by
rescheduling the task until reset is fully completed.

Reported-by: Siddaraju DH <siddaraju.dh@intel.com>
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Gurucharan G <gurucharanx.g@intel.com> (A Contingent worker at Intel)
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/ice/ice_ptp.c