docs: ABI: Document new timecard sysfs nodes.
authorJonathan Lemon <jonathan.lemon@gmail.com>
Thu, 10 Mar 2022 20:19:12 +0000 (12:19 -0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 11 Mar 2022 11:54:45 +0000 (11:54 +0000)
Add sysfs nodes for the frequency generator and signal counters.

Update SMA selector lists for these, and also add the new
'None', 'VCC' 'GND' selectors.

Signed-off-by: Jonathan Lemon <jonathan.lemon@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/ABI/testing/sysfs-timecard

index 5bf7848..2204781 100644 (file)
@@ -37,8 +37,15 @@ Description: (RO) Set of available destinations (sinks) for a SMA
                 PPS2   signal is sent to the PPS2 selector
                 TS1    signal is sent to timestamper 1
                 TS2    signal is sent to timestamper 2
+                TS3    signal is sent to timestamper 3
+                TS4    signal is sent to timestamper 4
                 IRIG   signal is sent to the IRIG-B module
                 DCF    signal is sent to the DCF module
+                FREQ1  signal is sent to frequency counter 1
+                FREQ2  signal is sent to frequency counter 2
+                FREQ3  signal is sent to frequency counter 3
+                FREQ4  signal is sent to frequency counter 4
+                None   signal input is disabled
                 =====  ================================================
 
 What:          /sys/class/timecard/ocpN/available_sma_outputs
@@ -50,10 +57,16 @@ Description:        (RO) Set of available sources for a SMA output signal.
                 10Mhz  output is from the 10Mhz reference clock
                 PHC    output PPS is from the PHC clock
                 MAC    output PPS is from the Miniature Atomic Clock
-                GNSS   output PPS is from the GNSS module
+                GNSS1  output PPS is from the first GNSS module
                 GNSS2  output PPS is from the second GNSS module
                 IRIG   output is from the PHC, in IRIG-B format
                 DCF    output is from the PHC, in DCF format
+                GEN1   output is from frequency generator 1
+                GEN2   output is from frequency generator 2
+                GEN3   output is from frequency generator 3
+                GEN4   output is from frequency generator 4
+                GND    output is GND
+                VCC    output is VCC
                 =====  ================================================
 
 What:          /sys/class/timecard/ocpN/clock_source
@@ -75,6 +88,85 @@ Contact:     Jonathan Lemon <jonathan.lemon@gmail.com>
 Description:   (RO) Contains the current offset value used by the firmware
                for internal disciplining of the atomic clock.
 
+What:          /sys/class/timecard/ocpN/freqX
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RO) Optional directory containing the sysfs nodes for
+               frequency counter <X>.
+
+What:          /sys/class/timecard/ocpN/freqX/frequency
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RO) Contains the measured frequency over the specified
+               measurement period.
+
+What:          /sys/class/timecard/ocpN/freqX/seconds
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RW) Specifies the number of seconds from 0-255 that the
+               frequency should be measured over.  Write 0 to disable.
+
+What:          /sys/class/timecard/ocpN/genX
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RO) Optional directory containing the sysfs nodes for
+               frequency generator <X>.
+
+What:          /sys/class/timecard/ocpN/genX/duty
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RO) Specifies the signal duty cycle as a percentage from 1-99.
+
+What:          /sys/class/timecard/ocpN/genX/period
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RO) Specifies the signal period in nanoseconds.
+
+What:          /sys/class/timecard/ocpN/genX/phase
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RO) Specifies the signal phase offset in nanoseconds.
+
+What:          /sys/class/timecard/ocpN/genX/polarity
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RO) Specifies the signal polarity, either 1 or 0.
+
+What:          /sys/class/timecard/ocpN/genX/running
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RO) Either 0 or 1, showing if the signal generator is running.
+
+What:          /sys/class/timecard/ocpN/genX/start
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RO) Shows the time in <sec>.<nsec> that the signal generator
+               started running.
+
+What:          /sys/class/timecard/ocpN/genX/signal
+Date:          March 2022
+Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>
+Description:   (RW) Used to start the signal generator, and summarize
+               the current status.
+
+               The signal generator may be started by writing the signal
+               period, followed by the optional signal values.  If the
+               optional values are not provided, they default to the current
+               settings, which may be obtained from the other sysfs nodes.
+
+                   period [duty [phase [polarity]]]
+
+               echo 500000000 > signal       # 1/2 second period
+               echo 1000000 40 100 > signal
+               echo 0 > signal               # turn off generator
+
+               Period and phase are specified in nanoseconds.  Duty cycle is
+               a percentage from 1-99.  Polarity is 1 or 0.
+
+               Reading this node will return:
+
+                   period duty phase polarity start_time
+
 What:          /sys/class/timecard/ocpN/gnss_sync
 Date:          September 2021
 Contact:       Jonathan Lemon <jonathan.lemon@gmail.com>