1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
12 working modes a dpll can support, differentiates if and how dpll selects
13 one of its inputs to syntonize with it, valid values for DPLL_A_MODE
18 doc: input can be only selected by sending a request to dpll
22 doc: highest prio input pin auto selected by dpll
28 provides information of dpll device lock status, valid values for
29 DPLL_A_LOCK_STATUS attribute
34 dpll was not yet locked to any valid input (or forced by setting
35 DPLL_A_MODE to DPLL_MODE_DETACHED)
40 dpll is locked to a valid signal, but no holdover available
44 dpll is locked and holdover acquired
48 dpll is in holdover state - lost a valid lock or was forced
49 by disconnecting all the pins (latter possible only
50 when dpll lock-state was already DPLL_LOCK_STATUS_LOCKED_HO_ACQ,
51 if dpll lock-state was not DPLL_LOCK_STATUS_LOCKED_HO_ACQ, the
52 dpll's lock-state shall remain DPLL_LOCK_STATUS_UNLOCKED)
56 name: lock-status-error
58 if previous status change was done due to a failure, this provides
59 information of dpll device lock status error.
60 Valid values for DPLL_A_LOCK_STATUS_ERROR attribute
65 dpll device lock status was changed without any error
70 dpll device lock status was changed due to undefined error.
71 Driver fills this value up in case it is not able
72 to obtain suitable exact error type.
76 dpll device lock status was changed because of associated
78 This may happen for example if dpll device was previously
79 locked on an input pin of type PIN_TYPE_SYNCE_ETH_PORT.
81 name: fractional-frequency-offset-too-high
83 the FFO (Fractional Frequency Offset) between the RX and TX
84 symbol rate on the media got too high.
85 This may happen for example if dpll device was previously
86 locked on an input pin of type PIN_TYPE_SYNCE_ETH_PORT.
90 name: clock-quality-level
92 level of quality of a clock device. This mainly applies when
93 the dpll lock-status is DPLL_LOCK_STATUS_HOLDOVER.
94 The current list is defined according to the table 11-7 contained
95 in ITU-T G.8264/Y.1364 document. One may extend this list freely
96 by other ITU-T defined clock qualities, or different ones defined
97 by another standardization body (for those, please use
123 temperature divider allowing userspace to calculate the
124 temperature as float with three digit decimal precision.
125 Value of (DPLL_A_TEMP / DPLL_TEMP_DIVIDER) is integer part of
127 Value of (DPLL_A_TEMP % DPLL_TEMP_DIVIDER) is fractional part of
132 doc: type of dpll, valid values for DPLL_A_TYPE attribute
136 doc: dpll produces Pulse-Per-Second signal
140 doc: dpll drives the Ethernet Equipment Clock
146 defines possible types of a pin, valid values for DPLL_A_PIN_TYPE
151 doc: aggregates another layer of selectable pins
158 doc: ethernet port PHY's recovered clock
161 doc: device internal oscillator
164 doc: GNSS recovered clock
170 defines possible direction of a pin, valid values for
171 DPLL_A_PIN_DIRECTION attribute
175 doc: pin used as a input of a signal
179 doc: pin used to output the signal
183 name: pin-frequency-1-hz
187 name: pin-frequency-10-khz
191 name: pin-frequency-77_5-khz
195 name: pin-frequency-10-mhz
201 defines possible states of a pin, valid values for
202 DPLL_A_PIN_STATE attribute
206 doc: pin connected, active input of phase locked loop
210 doc: pin disconnected, not considered as a valid input
213 doc: pin enabled for automatic input selection
217 name: pin-capabilities
219 defines possible capabilities of a pin, valid flags on
220 DPLL_A_PIN_CAPABILITIES attribute
223 name: direction-can-change
224 doc: pin direction can be changed
226 name: priority-can-change
227 doc: pin priority can be changed
229 name: state-can-change
230 doc: pin state can be changed
233 name: phase-offset-divider
236 phase offset divider allows userspace to calculate a value of
237 measured signal phase difference between a pin and dpll device
238 as a fractional value with three digit decimal precision.
239 Value of (DPLL_A_PHASE_OFFSET / DPLL_PHASE_OFFSET_DIVIDER) is an
240 integer part of a measured phase offset value.
241 Value of (DPLL_A_PHASE_OFFSET % DPLL_PHASE_OFFSET_DIVIDER) is a
242 fractional part of a measured phase offset value.
282 name: lock-status-error
284 enum: lock-status-error
286 name: clock-quality-level
288 enum: clock-quality-level
291 Level of quality of a clock device. This mainly applies when
292 the dpll lock-status is DPLL_LOCK_STATUS_HOLDOVER. This could
293 be put to message multiple times to indicate possible parallel
294 quality levels (e.g. one specified by ITU option 1 and another
295 one specified by option 2).
298 enum-name: dpll_a_pin
336 name: frequency-supported
339 nested-attributes: frequency-range
356 enum: pin-capabilities
361 nested-attributes: pin-parent-device
366 nested-attributes: pin-parent-pin
368 name: phase-adjust-min
371 name: phase-adjust-max
380 name: fractional-frequency-offset
383 The FFO (Fractional Frequency Offset) between the RX and TX
384 symbol rate on the media associated with the pin:
385 (rx_frequency-tx_frequency)/rx_frequency
386 Value is in PPM (parts per million).
387 This may be implemented for example for pin of type
388 PIN_TYPE_SYNCE_ETH_PORT.
390 name: esync-frequency
393 Frequency of Embedded SYNC signal. If provided, the pin is configured
394 with a SYNC signal embedded into its base clock frequency.
396 name: esync-frequency-supported
399 nested-attributes: frequency-range
401 If provided a pin is capable of embedding a SYNC signal (within given
402 range) into its base frequency signal.
407 A ratio of high to low state of a SYNC signal pulse embedded
408 into base clock frequency. Value is in percents.
410 name: pin-parent-device
432 name: frequency-range
446 Get id of dpll device that matches given attributes
448 flags: [ admin-perm ]
452 post: dpll-unlock-doit
465 Get list of DPLL devices (dump) or attributes of a single dpll device
467 flags: [ admin-perm ]
492 doc: Set attributes for a DPLL device
494 flags: [ admin-perm ]
503 name: device-create-ntf
504 doc: Notification about device appearing
508 name: device-delete-ntf
509 doc: Notification about device disappearing
513 name: device-change-ntf
514 doc: Notification about device configuration being changed
520 Get id of a pin that matches given attributes
522 flags: [ admin-perm ]
526 post: dpll-unlock-doit
542 Get list of pins and its attributes.
544 - dump request without any attributes given - list all the pins in the
546 - dump request with target dpll - list all the pins registered with
548 - do request with target dpll and target pin - single pin attributes
550 flags: [ admin-perm ]
553 pre: dpll-pin-pre-doit
554 post: dpll-pin-post-doit
566 - frequency-supported
573 - fractional-frequency-offset
575 - esync-frequency-supported
586 doc: Set attributes of a target pin
588 flags: [ admin-perm ]
591 pre: dpll-pin-pre-doit
592 post: dpll-pin-post-doit
606 doc: Notification about pin appearing
611 doc: Notification about pin disappearing
616 doc: Notification about pin configuration being changed