net: microchip: lan743x: Reduce PTP timeout on HW failure
The PTP_CMD_CTL is a self clearing register which controls the PTP clock values. In the current implementation driver waits for a duration of 20 sec in case of HW failure to clear the PTP_CMD_CTL register bit. This timeout of 20 sec is very long to recognize a HW failure, as it is typically cleared in one clock(<16ns). Hence reducing the timeout to 1 sec would be sufficient to conclude if there is any HW failure observed. The usleep_range will sleep somewhere between 1 msec to 20 msec for each iteration. By setting the PTP_CMD_CTL_TIMEOUT_CNT to 50 the max timeout is extended to 1 sec. Signed-off-by: Rengarajan S <rengarajan.s@microchip.com> Reviewed-by: Simon Horman <horms@kernel.org> Link: https://lore.kernel.org/r/20240502050300.38689-1-rengarajan.s@microchip.com Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
parent
cdc74c9d06
commit
b1de3c0df7
@ -58,7 +58,7 @@ int lan743x_gpio_init(struct lan743x_adapter *adapter)
|
||||
static void lan743x_ptp_wait_till_cmd_done(struct lan743x_adapter *adapter,
|
||||
u32 bit_mask)
|
||||
{
|
||||
int timeout = 1000;
|
||||
int timeout = PTP_CMD_CTL_TIMEOUT_CNT;
|
||||
u32 data = 0;
|
||||
|
||||
while (timeout &&
|
||||
|
@ -21,6 +21,7 @@
|
||||
#define LAN743X_PTP_N_EXTTS 4
|
||||
#define LAN743X_PTP_N_PPS 0
|
||||
#define PCI11X1X_PTP_IO_MAX_CHANNELS 8
|
||||
#define PTP_CMD_CTL_TIMEOUT_CNT 50
|
||||
|
||||
struct lan743x_adapter;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user