Provided by: linuxptp_1.8-1ubuntu0.1_amd64 bug

NAME

       phc_ctl - directly control PHC device clock

SYNOPSIS

       phc_ctl [ options ] <device> [ commands ]

DESCRIPTION

       phc_ctl is a program which can be used to directly control a PHC clock device.  Typically, it is used for
       debugging purposes, and has little use for general control of the device.  For  general  control  of  PHC
       clock devices, phc2sys (8) should be preferred.

       <device>  may  be  either  CLOCK_REALTIME,  any  /dev/ptpX  device, or any ethernet device which supports
       ethtool's get_ts_info ioctl.

OPTIONS

       -l print-level
              Set the maximum syslog level of messages which should be printed or sent to the system logger. The
              default is 6 (LOG_INFO).

       -q     Do not send messages to syslog. By default messages will be sent.

       -Q     Do not print messages to standard output. By default messages will be printed.

       -h     Display a help message.

       -v     Prints the software version and exits.

COMMANDS

       phc_ctl  is  controlled  by  passing  commands  which  take either an optional or required parameter. The
       commands (outlined below) will control aspects of the PHC clock device. These commands may be useful  for
       inspecting  or  debugging the PHC driver, but may have adverse side effects on running instances of ptp4l
       (8) or phc2sys (8)

       set seconds
              Set the PHC clock time to the value specified in seconds. Defaults to reading CLOCK_REALTIME if no
              value is provided.

       get    Get the current time of the PHC clock device.

       adj seconds
              Adjust the PHC clock by an amount of seconds provided. This argument is required.

       freq ppb
              Adjust  the  frequency  of  the  PHC  clock  by the specified parts per billion. If no argument is
              provided, it will attempt to read the current frequency and report it.

       cmp    Compare the PHC clock device to CLOCK_REALTIME, using the best method available.

       caps   Display the device capabiltiies. This is the default command if no commands are provided.

       wait seconds
              Sleep the process for the specified period of  time,  waking  up  and  resuming  afterwards.  This
              command may be useful for sanity checking whether the PHC clock is running as expected.

              The  arguments  specified  in seconds are read as double precision floating point values, and will
              scale to nanoseconds. This means providing a value of 5.5 means  5  and  one  half  seconds.  This
              allows specifying fairly precise values for time.

EXAMPLES

       Read the current clock time from the device
              phc_ctl /dev/ptp0 get

       Set the PHC clock time to CLOCK_REALTIME
              phc_ctl /dev/ptp0 set

       Set PHC clock time to 0 (seconds since Epoch)
              phc_ctl /dev/ptp0 set 0.0

       Quickly  sanity  check frequency slewing by setting slewing frequency by positive 10%, resetting clock to
       0.0 time, waiting for 10 seconds, and then reading time. The  time  read  back  should  be  (roughly)  11
       seconds, since the clock was slewed 10% faster.
              phc_ctl /dev/ptp0 freq 100000000 set 0.0 wait 10.0 get

SEE ALSO

       ptp4l(8) phc2sys(8)