On 23/10/2024 5:30, Chris H wrote:
From: Christopher S M Hall <[email protected]>

Writing to clear the PTM status 'valid' bit while the PTM cycle is
triggered results in unreliable PTM operation. To fix this, clear the
PTM 'trigger' and status after each PTM transaction.

The issue can be reproduced with the following:

$ sudo phc2sys -R 1000 -O 0 -i tsn0 -m

Note: 1000 Hz (-R 1000) is unrealistically large, but provides a way to
quickly reproduce the issue.

PHC2SYS exits with:

"ioctl PTP_OFFSET_PRECISE: Connection timed out" when the PTM transaction
   fails

Fixes: a90ec8483732 ("igc: Add support for PTP getcrosststamp()")
Signed-off-by: Christopher S M Hall <[email protected]>
Reviewed-by: Michal Swiatkowski <[email protected]>
---
  drivers/net/ethernet/intel/igc/igc_defines.h |  1 +
  drivers/net/ethernet/intel/igc/igc_ptp.c     | 70 ++++++++++++--------
  2 files changed, 42 insertions(+), 29 deletions(-)

Tested-by: Avigail Dahan <[email protected]>

Reply via email to