Family dpll
netlink 规范¶
摘要¶
DPLL 子系统。
操作¶
device-id-get¶
获取与给定属性匹配的 dpll 设备的 ID
- attribute-set:
- flags:
[
admin-perm
]- do:
- pre
dpll-lock-doit
- post
dpll-unlock-doit
- request
- attributes:
[
module-name
,clock-id
,type
]
- reply
- attributes:
[
id
]
device-get¶
获取 DPLL 设备列表(转储)或单个 dpll 设备的属性
- attribute-set:
- flags:
[
admin-perm
]- do:
- pre
dpll-pre-doit
- post
dpll-post-doit
- request
- attributes:
[
id
]
- reply
- attributes:
[
id
,module-name
,mode
,mode-supported
,lock-status
,lock-status-error
,temp
,clock-id
,type
]
- dump:
- reply
- attributes:
[
id
,module-name
,mode
,mode-supported
,lock-status
,lock-status-error
,temp
,clock-id
,type
]
device-set¶
设置 DPLL 设备的属性
- attribute-set:
- flags:
[
admin-perm
]- do:
- pre
dpll-pre-doit
- post
dpll-post-doit
- request
- attributes:
[
id
]
device-create-ntf¶
设备出现时的通知
- notify:
device-get
- mcgrp:
monitor
device-delete-ntf¶
设备消失时的通知
- notify:
device-get
- mcgrp:
monitor
device-change-ntf¶
设备配置更改时的通知
- notify:
device-get
- mcgrp:
monitor
pin-id-get¶
获取与给定属性匹配的引脚的 ID
- attribute-set:
- flags:
[
admin-perm
]- do:
- pre
dpll-lock-doit
- post
dpll-unlock-doit
- request
- attributes:
[
module-name
,clock-id
,board-label
,panel-label
,package-label
,type
]
- reply
- attributes:
[
id
]
pin-get¶
获取引脚及其属性的列表。
没有给定任何属性的转储请求 - 列出系统中的所有引脚
具有目标 dpll 的转储请求 - 列出已注册到给定 dpll 设备的所有引脚
具有目标 dpll 和目标引脚的 do 请求 - 单个引脚属性
- attribute-set:
- flags:
[
admin-perm
]- do:
- pre
dpll-pin-pre-doit
- post
dpll-pin-post-doit
- request
- attributes:
[
id
]
- reply
- attributes:
[
id
,board-label
,panel-label
,package-label
,type
,frequency
,frequency-supported
,capabilities
,parent-device
,parent-pin
,phase-adjust-min
,phase-adjust-max
,phase-adjust
,fractional-frequency-offset
,esync-frequency
,esync-frequency-supported
,esync-pulse
]
- dump:
- request
- attributes:
[
id
]
- reply
- attributes:
[
id
,board-label
,panel-label
,package-label
,type
,frequency
,frequency-supported
,capabilities
,parent-device
,parent-pin
,phase-adjust-min
,phase-adjust-max
,phase-adjust
,fractional-frequency-offset
,esync-frequency
,esync-frequency-supported
,esync-pulse
]
pin-set¶
设置目标引脚的属性
- attribute-set:
- flags:
[
admin-perm
]- do:
- pre
dpll-pin-pre-doit
- post
dpll-pin-post-doit
- request
- attributes:
[
id
,frequency
,direction
,prio
,state
,parent-device
,parent-pin
,phase-adjust
,esync-frequency
]
pin-create-ntf¶
引脚出现时的通知
- notify:
pin-get
- mcgrp:
monitor
pin-delete-ntf¶
引脚消失时的通知
- notify:
pin-get
- mcgrp:
monitor
pin-change-ntf¶
引脚配置更改时的通知
- notify:
pin-get
- mcgrp:
monitor
多播组¶
monitor
定义¶
mode¶
- type:
enum
- doc:
dpll 可以支持的工作模式,区分 dpll 如何以及是否选择其输入之一以与其同步,DPLL_A_MODE 属性的有效值
- entries:
- manual:
只能通过向 dpll 发送请求来选择输入
- automatic:
dpll 自动选择最高优先级的输入引脚
lock-status¶
- type:
enum
- doc:
提供 dpll 设备锁定状态的信息,DPLL_A_LOCK_STATUS 属性的有效值
- entries:
- unlocked:
dpll 尚未锁定到任何有效输入(或通过将 DPLL_A_MODE 设置为 DPLL_MODE_DETACHED 强制执行)
- locked:
dpll 已锁定到有效信号,但没有保持可用
- locked-ho-acq:
dpll 已锁定并获得保持
- holdover:
dpll 处于保持状态 - 丢失了有效锁或通过断开所有引脚强制执行(后者仅在 dpll 锁定状态已经是 DPLL_LOCK_STATUS_LOCKED_HO_ACQ 时才可能,如果 dpll 锁定状态不是 DPLL_LOCK_STATUS_LOCKED_HO_ACQ,则 dpll 的锁定状态应保持 DPLL_LOCK_STATUS_UNLOCKED)
lock-status-error¶
- type:
enum
- doc:
如果之前的状态更改是由于故障引起的,则提供 dpll 设备锁定状态错误的信息。DPLL_A_LOCK_STATUS_ERROR 属性的有效值
- entries:
- none:
dpll 设备锁定状态已更改,没有任何错误
- undefined:
dpll 设备锁定状态已更改,原因是未定义的错误。如果驱动程序无法获得合适的精确错误类型,则会填充此值。
- media-down:
dpll 设备锁定状态已更改,原因是关联的媒体已关闭。例如,如果 dpll 设备之前已锁定在 PIN_TYPE_SYNCE_ETH_PORT 类型的输入引脚上,则可能会发生这种情况。
- fractional-frequency-offset-too-high:
媒体上 RX 和 TX 符号率之间的 FFO(分数频率偏移)过高。例如,如果 dpll 设备之前已锁定在 PIN_TYPE_SYNCE_ETH_PORT 类型的输入引脚上,则可能会发生这种情况。
clock-quality-level¶
- type:
enum
- doc:
时钟设备的质量级别。这主要适用于 dpll 锁定状态为 DPLL_LOCK_STATUS_HOLDOVER 时。当前列表是根据 ITU-T G.8264/Y.1364 文档中包含的表 11-7 定义的。可以自由地通过其他 ITU-T 定义的时钟质量来扩展此列表,或者通过另一个标准化机构定义的其他时钟质量(对于这些,请使用不同的前缀)。
- entries:
- itu-opt1-prc:
- itu-opt1-ssu-a:
- itu-opt1-ssu-b:
- itu-opt1-eec1:
- itu-opt1-prtc:
- itu-opt1-eprtc:
- itu-opt1-eeec:
- itu-opt1-eprc:
temp-divider¶
- type:
const
- value:
1000
- doc:
温度除数,允许用户空间计算具有三位小数精度的浮点温度。 (DPLL_A_TEMP / DPLL_TEMP_DIVIDER) 的值是温度值的整数部分。 (DPLL_A_TEMP % DPLL_TEMP_DIVIDER) 的值是温度值的小数部分。
type¶
- type:
enum
- doc:
dpll 的类型,DPLL_A_TYPE 属性的有效值
- entries:
- pps:
dpll 产生每秒脉冲信号
- eec:
dpll 驱动以太网设备时钟
pin-type¶
- type:
enum
- doc:
定义引脚的可能类型,DPLL_A_PIN_TYPE 属性的有效值
- entries:
- mux:
聚合另一层可选择的引脚
- ext:
外部输入
- synce-eth-port:
以太网端口 PHY 的恢复时钟
- int-oscillator:
设备内部振荡器
- gnss:
GNSS 恢复时钟
pin-direction¶
- type:
enum
- doc:
定义引脚的可能方向,DPLL_A_PIN_DIRECTION 属性的有效值
- entries:
- input:
引脚用作信号的输入
- output:
引脚用于输出信号
pin-frequency-1-hz¶
- type:
const
- value:
1
pin-frequency-10-khz¶
- type:
const
- value:
10000
pin-frequency-77-5-khz¶
- type:
const
- value:
77500
pin-frequency-10-mhz¶
- type:
const
- value:
10000000
pin-state¶
- type:
enum
- doc:
定义引脚的可能状态,DPLL_A_PIN_STATE 属性的有效值
- entries:
- connected:
引脚已连接,锁相环的有效输入
- disconnected:
引脚已断开连接,不被视为有效输入
- selectable:
启用引脚以进行自动输入选择
pin-capabilities¶
- type:
flags
- doc:
定义引脚的可能功能,DPLL_A_PIN_CAPABILITIES 属性上的有效标志
- entries:
- direction-can-change:
可以更改引脚方向
- priority-can-change:
可以更改引脚优先级
- state-can-change:
可以更改引脚状态
phase-offset-divider¶
- type:
const
- value:
1000
- doc:
相位偏移除数允许用户空间将引脚和 dpll 设备之间测量的信号相位差计算为具有三位小数精度的分数。 (DPLL_A_PHASE_OFFSET / DPLL_PHASE_OFFSET_DIVIDER) 的值是测量的相位偏移值的整数部分。 (DPLL_A_PHASE_OFFSET % DPLL_PHASE_OFFSET_DIVIDER) 的值是测量的相位偏移值的小数部分。
属性集¶
dpll¶
id (u32
)¶
module-name (string
)¶
pad (pad
)¶
clock-id (u64
)¶
mode (u32
)¶
- enum:
mode-supported (u32
)¶
- enum:
- multi-attr:
True
lock-status (u32
)¶
- enum:
temp (s32
)¶
type (u32
)¶
- enum:
lock-status-error (u32
)¶
- enum:
clock-quality-level (u32
)¶
- enum:
- multi-attr:
True
- doc:
时钟设备的质量等级。这主要适用于 dpll 锁定状态为 DPLL_LOCK_STATUS_HOLDOVER 时。可以多次将其放入消息中,以指示可能的并行质量等级(例如,一个由 ITU 选项 1 指定,另一个由选项 2 指定)。
pin¶
id (u32
)¶
parent-id (u32
)¶
module-name (string
)¶
pad (pad
)¶
clock-id (u64
)¶
board-label (string
)¶
panel-label (string
)¶
package-label (string
)¶
type (u32
)¶
- enum:
direction (u32
)¶
- enum:
frequency (u64
)¶
frequency-supported (nest
)¶
- multi-attr:
True
- nested-attributes:
frequency-min (u64
)¶
frequency-max (u64
)¶
prio (u32
)¶
state (u32
)¶
- enum:
capabilities (u32
)¶
- enum:
parent-device (nest
)¶
- multi-attr:
True
- nested-attributes:
parent-pin (nest
)¶
- multi-attr:
True
- nested-attributes:
phase-adjust-min (s32
)¶
phase-adjust-max (s32
)¶
phase-adjust (s32
)¶
phase-offset (s64
)¶
fractional-frequency-offset (sint
)¶
- doc:
该FFO(分数频率偏移)是与引脚相关的介质上RX和TX符号率之间的偏移:(rx_frequency-tx_frequency)/rx_frequency 值以PPM(百万分之几)为单位。 例如,这可以为PIN_TYPE_SYNCE_ETH_PORT类型的引脚实现。
esync-frequency (u64
)¶
- doc:
嵌入式同步信号的频率。 如果提供,则引脚配置为将SYNC信号嵌入其基本时钟频率中。
esync-frequency-supported (nest
)¶
- multi-attr:
True
- nested-attributes:
- doc:
如果提供了一个引脚,则该引脚能够将其SYNC信号(在给定的范围内)嵌入到其基频信号中。
esync-pulse (u32
)¶
- doc:
嵌入到基本时钟频率中的SYNC信号脉冲的高电平与低电平状态的比率。 值以百分比表示。