Subject: Re: [net-next 03/15] net/mlx5: Add adjphase function to support hardware-only offset control

From: Jakub Kicinski <[email-masked]>
Date: Thu, 19 Jan 2023 19:46:31 -0800

On Wed, 18 Jan 2023 13:33:56 -0800 Jacob Keller wrote:
> > The adjtime function supports using hardware to set the clock offset when
> > the delta was supported by the hardware. When the delta is not supported by
> > the hardware, the driver handles adjusting the clock. The newly-introduced
> > adjphase function is similar to the adjtime function, except it guarantees
> > that a provided clock offset will be used directly by the hardware to
> > adjust the PTP clock. When the range is not acceptable by the hardware, an
> > error is returned.
> 
> Makes sense. Once you've verified that the delta is within the accepted
> range you can just re-use the existing adjtime function.

Seems like we should add a "max_time_adj" to struct ptp_clock_info
and let the core call adjphase if the offset is small enough to fit.
Instead of having all drivers redirect the calls internally.