ptp: Introduce a high resolution frequency adjustment method.
authorRichard Cochran <richardcochran@gmail.com>
Tue, 8 Nov 2016 21:49:16 +0000 (22:49 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 10 Nov 2016 02:19:53 +0000 (21:19 -0500)
commitd8d26354191399627bac9cf0da0667b0f5178686
tree1e9b9445e9dee47a2526acd5df3ae06122dbb8ee
parent149d6ad83663b4820ca09c9d40b1eea7f5c22c2b
ptp: Introduce a high resolution frequency adjustment method.

The internal PTP Hardware Clock (PHC) interface limits the resolution for
frequency adjustments to one part per billion.  However, some hardware
devices allow finer adjustment, and making use of the increased resolution
improves synchronization measurably on such devices.

This patch adds an alternative method that allows finer frequency tuning
by passing the scaled ppm value to PHC drivers.  This value comes from
user space, and it has a resolution of about 0.015 ppb.  We also deprecate
the older method, anticipating its removal once existing drivers have been
converted over.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
Suggested-by: Ulrik De Bie <ulrik.debie-os@e2big.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/ptp/ptp_clock.c
include/linux/ptp_clock_kernel.h