Re: [PATCH net-next v7 3/3] dpll: zl3073x: add PTP clock support

Ivan Vecera <[email protected]>
Newsgroups org.kernel.vger.netdev,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Sashiko findings. Replies inline.

 > Since there is no delay or sleep inside this loop, will it exhaust
 > all 20 retries almost instantly on fast control buses?

See reply to the same finding on patch 2/3 — testing on I2C at both
100 kHz and 400 kHz shows each iteration takes 17-19 ms regardless
of bus speed (dominated by device internal processing). 20 retries
give 340-380 ms of budget, well beyond the 20 ms margin window.

 > If zl3073x_chan_tod_ready_wait() fails here, the function returns rc
 > directly. [...] wouldn't returning an error cause the PTP servo to
 > retry and apply the seconds adjustment a second time?

If tod_ready_wait fails, we cannot be certain that WR_NEXT_1HZ was
actually applied — the semaphore timeout means we do not know whether
the hardware committed the seconds or not. Returning the error is
the safer choice, because setting sec_adjusted = true before
confirmation would mask a genuine hardware failure and silently
report success when the adjustment may not have been applied at all.

Thanks,
Ivan
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.