MIPI SyS-T over STP¶
MIPI SyS-T 协议驱动程序可以与 STM 类设备一起使用,以生成标准化的跟踪流。除了作为标准之外,它还提供了更好的跟踪源标识和时间戳关联。
为了将 MIPI SyS-T 协议驱动程序与您的 STM 设备一起使用,首先,您需要 CONFIG_STM_PROTO_SYS_T。
现在,您可以在为您的 STM 设备创建策略时选择要使用的协议驱动程序,通过在策略名称中指定它
# mkdir /config/stp-policy/dummy_stm.0:p_sys-t.my-policy/
换句话说,策略名称格式扩展如下
<device_name>:<protocol_name>.<policy_name>
因此,使用 Intel TH,它看起来可能像 “0-sth:p_sys-t.my-policy”。
如果省略协议名称,STM 类将选择首先加载的任何协议驱动程序。
您还可以通过以下方式双重检查一切是否按预期工作
# cat /config/stp-policy/dummy_stm.0:p_sys-t.my-policy/protocol p_sys-t
现在,使用 MIPI SyS-T 协议驱动程序,configfs 中的每个策略节点都会获得一些额外的属性,这些属性确定特定于协议的每个源的参数
# mkdir /config/stp-policy/dummy_stm.0:p_sys-t.my-policy/default # ls /config/stp-policy/dummy_stm.0:p_sys-t.my-policy/default channels clocksync_interval do_len masters ts_interval uuid
这里最重要的是“uuid”,它确定将用于标记来自此源的所有数据的 UUID。它是在创建新节点时自动生成的,但您可能希望更改它。
do_len 打开/关闭 MIPI SyS-T 消息头中的附加“有效负载长度”字段。默认情况下它是关闭的,因为 STP 已经标记了消息边界。
ts_interval 和 clocksync_interval 确定在我们需要在消息头中包含协议(非传输,即 STP)时间戳或分别发送 CLOCKSYNC 数据包之前可以经过多少毫秒。
有关更多详细信息,请参阅 Documentation/ABI/testing/configfs-stp-policy-p_sys-t。