Thread (10 messages) flat view 10 messages, 4 authors, 2018-08-19

Re: [PATCH] net: lan743x_ptp: convert to ktime_get_clocktai_ts64

From: Arnd Bergmann <arnd@arndb.de>
Date: 2018-08-15 20:44:53
Also in: lkml

On Wed, Aug 15, 2018 at 10:41 PM [off-list ref] wrote:
quoted
quoted
quoted
Question: this is the only ptp driver that sets the hardware time to
the current system time in TAI. Why does it do that?
This is done when the driver starts up after reset. Otherwise the clock is off
by 48 years.
quoted
It seemed to me that the system time was the most appropriate clock to
sync to.
quoted
If my reasoning is incorrect, please enlighten me.
I've never worked with PTP, but my understanding from looking at the other
drivers is that the time normally gets set either from another host through
the PTP protocol, or using clock_settime() from user space with the current
time.
Those methods will still work. But if it's not set by those methods, I thought the
clock should at least be set once on driver startup to align with the system clock.
After that, other methods are free to reset it again.
(adding Richard Cochran to Cc for more insight here)

I would argue that it's more important that the driver behaves like all other
PTP implementations. If we want the behavior to be that the initial PTP time is
set to the ktime_get_clocktai_ts64() value, then this should be done by the
PTP core rather than the device driver. If there is a good reason that the
other drivers don't do it like this, then I would assume the same reason applies
to lan743x.

        Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help