22 Sep, 2016

1 commit


04 Mar, 2016

1 commit

  • Currently, network /system cross-timestamping is performed in the
    PTP_SYS_OFFSET ioctl. The PTP clock driver reads gettimeofday() and
    the gettime64() callback provided by the driver. The cross-timestamp
    is best effort where the latency between the capture of system time
    (getnstimeofday()) and the device time (driver callback) may be
    significant.

    The getcrosststamp() callback and corresponding PTP_SYS_OFFSET_PRECISE
    ioctl allows the driver to perform this device/system correlation when
    for example cross timestamp hardware is available. Modern Intel
    systems can do this for onboard Ethernet controllers using the ART
    counter. There is virtually zero latency between captures of the ART
    and network device clock.

    The capabilities ioctl (PTP_CLOCK_GETCAPS), is augmented allowing
    applications to query whether or not drivers implement the
    getcrosststamp callback, providing more precise cross timestamping.

    Cc: Prarit Bhargava
    Cc: Richard Cochran
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: Andy Lutomirski
    Cc: kevin.b.stanton@intel.com
    Cc: kevin.j.clarke@intel.com
    Cc: hpa@zytor.com
    Cc: jeffrey.t.kirsher@intel.com
    Cc: netdev@vger.kernel.org
    Acked-by: Richard Cochran
    Signed-off-by: Christopher S. Hall
    [jstultz: Commit subject tweaks]
    Signed-off-by: John Stultz

    Christopher S. Hall
     

01 Apr, 2015

2 commits

  • All of the PHC drivers have been converted to the new methods. This patch
    converts the three remaining callers within the core code and removes the
    older methods for good. As a result, the core PHC code is ready for the
    year 2038. However, some of the PHC drivers are not quite ready yet.

    Signed-off-by: Richard Cochran
    Signed-off-by: David S. Miller

    Richard Cochran
     
  • Converting the PHC drivers over to the new methods is one step along the
    way to making them ready for 2038. Once all the drivers are up to date,
    then the old methods will be removed.

    Signed-off-by: Richard Cochran
    Signed-off-by: David S. Miller

    Richard Cochran
     

22 Mar, 2014

1 commit

  • This patch adds a pair of new ioctls to the PTP Hardware Clock device
    interface. Using the ioctls, user space programs can query each pin to
    find out its current function and also reprogram a different function
    if desired.

    Signed-off-by: Richard Cochran
    Signed-off-by: David S. Miller

    Richard Cochran
     

04 Nov, 2012

1 commit

  • This patch updates the adjfreq callback description to include a note that the
    delta in ppb is always relative to the base frequency, and not to the current
    frequency of the hardware clock.

    Signed-off-by: Jacob Keller
    CC: stable@vger.kernel.org [v3.5+]
    CC: Richard Cochran
    CC: John Stultz
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Jacob Keller
     

23 Sep, 2012

2 commits

  • There has been some confusion among PHC driver authors about the
    intended purpose of the clock_name attribute. This patch expands the
    documation in order to clarify how the clock_name field should be
    understood.

    Signed-off-by: Richard Cochran
    Signed-off-by: David S. Miller

    Richard Cochran
     
  • PTP Hardware Clock devices appear as class devices in sysfs. This patch
    changes the registration API to use the parent device, clarifying the
    clock's relationship to the underlying device.

    Signed-off-by: Richard Cochran
    Acked-by: Ben Hutchings
    Acked-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Richard Cochran
     

08 Sep, 2012

1 commit

  • Initial version by Stuart Hodgson

    Some PHC device drivers may deliver PPS events with a significant
    and variable delay, but still be able to measure precisely what
    that delay is.

    Add a pps_sub_ts() function for subtracting a delay from the
    timestamp(s) in a PPS event, and a PTP event type (PTP_CLOCK_PPSUSR)
    for which the caller provides a complete PPS event.

    Signed-off-by: Ben Hutchings

    Ben Hutchings
     

04 Apr, 2012

1 commit


24 May, 2011

1 commit

  • This patch adds an infrastructure for hardware clocks that implement
    IEEE 1588, the Precision Time Protocol (PTP). A class driver offers a
    registration method to particular hardware clock drivers. Each clock is
    presented as a standard POSIX clock.

    The ancillary clock features are exposed in two different ways, via
    the sysfs and by a character device.

    Signed-off-by: Richard Cochran
    Acked-by: Arnd Bergmann
    Acked-by: David S. Miller
    Signed-off-by: John Stultz

    Richard Cochran