Subject: Re: phc2sys - does it work?

From: Richard Cochran <[email-masked]>
Date: Mon, 27 Jul 2020 07:10:15 -0700

On Sun, Jul 26, 2020 at 10:29:53PM +0100, Russell King - ARM Linux admin wrote:
> I have noticed that phc2sys can sometimes get confused and it needs
> phc_ctl to reset the frequency back to zero for it to have another go.
> The hardware is capable of a max_adj of S32_MAX, and I think that
> allows phc2sys to get confused sometimes, so I probably need to clamp
> my calculated max_adj to a sane limit.  Is there an upper limit that
> phc2sys expects?

The program uses the minumum of the PHC's max_adj and the
max_frequency configuration value (whose default is 900000000).

In general, huge frequency corrections are a sign that something is
wrong.  If your setup has sudden phase jumps (like ntpd resetting the
clock), then you should consider allowing phc2sys to jump as well.
For example, I use

     phc2sys -S 0.128

which allows phc2sys to jump when the offset is greater that 128
milliseconds.  That value is chosen to match ntpd's threshold for
jumping the time.

HTH,
Richard