Re: [PATCH net-next v5 2/2] net: phy: broadcom: Add PTP support for some Broadcom PHYs.
From: Richard Cochran <richardcochran@gmail.com>
Date: 2022-05-29 00:34:54
From: Richard Cochran <richardcochran@gmail.com>
Date: 2022-05-29 00:34:54
On Wed, May 18, 2022 at 03:39:35PM -0700, Jonathan Lemon wrote:
+static int bcm_ptp_adjtime_locked(struct bcm_ptp_private *priv,
+ s64 delta_ns)
+{
+ struct timespec64 ts;
+ int err;
+
+ err = bcm_ptp_gettime_locked(priv, &ts, NULL);
+ if (!err) {
+ set_normalized_timespec64(&ts, ts.tv_sec,
+ ts.tv_nsec + delta_ns);This also takes a LONG time when delta is large...
+ err = bcm_ptp_settime_locked(priv, &ts); + } + return err; +}
Try this instead:
s64 ns;
err = bcm_ptp_gettime_locked(priv, &ts, NULL);
if (err) {
return err;
}
ns = timespec64_to_ns(&ts);
ns += delta_ns;
ts = ns_to_timespec64(ns);
err = bcm_ptp_settime_locked(priv, &ts);
return err;
Thanks,
Richard