Skip to main content

调试 DisplayPort

选择显示路径。测试 USB Type-C 端口时,请保持 eDP 面板处于连接状态。
通过 SSH 连接到目标设备,并在 root shell 中运行目标设备命令。有关说明,请参阅 使用 SSH 登录。
在执行以下检查之前,请运行 connector=eDP-1。此命令会选择集成的 eDP 面板。
图:IQ-X5121 eDP 连接器

图:IQ-X5121 eDP 连接器

上述连接器映射因平台而异,并决定了后续步骤中使用的 connector 值。除此之外,所有 DisplayPort 页面上的七个故障排除步骤均相同。

1. 识别连接器

运行以下命令:
此命令会列出 DRM 连接器及其 ID 和连接状态。

2. 检查连接器状态和模式

运行以下命令:
此命令会报告所选连接器是否已连接。预期结果为 connected。

参考输出

运行以下命令:
此命令会列出所连接显示器报告的模式。已连接的输出通常会报告至少一种模式。如果状态为 disconnected,请检查电缆、显示器电源以及所选的显示器输入源。如果不存在 card0,请使用 modetest 报告的 DRM 卡。

3. 检查活动 DRM 状态

如果尚未挂载 debugfs,请运行以下命令:
此命令会使 DRM 状态和接口调试数据可用。运行以下命令:
此命令会显示所选连接器的编码器、CRTC、模式和平面。

参考输出

运行以下命令:
此命令会显示每个连接器、编码器、CRTC 和平面的内核 DRM 状态。对于所选连接器,请确认存在一条活动显示管线:
  • status: connected
  • 已为该连接器分配编码器
  • 该编码器对应的 CRTC ID 不为零
  • 该 CRTC 的状态为 active=yes
  • 存在一个 crtc 字段与该 CRTC ID 匹配的平面
只有满足以上所有条件,才能获得可见输出。
测试显示模式后恢复 Weston。要测试其他模式,请按照 运行 DRM modetest 操作,然后在返回 Weston 测试之前执行 重新启动 Weston。

4. 检查接口信号

运行以下命令:
当驱动程序提供 dp_debug 时,此命令会显示 DisplayPort 链路速率、通道数和面板时序。

参考输出

运行以下命令:
此命令会以 Hz 为单位打印 DisplayPort 链路时钟频率。

参考输出

运行以下命令:
此命令会以 Hz 为单位打印 DisplayPort 像素时钟频率。

参考输出

正常工作的链路具有非零的速率和通道数值,并报告至少一种模式。请将像素时钟与活动 CRTC 模式进行比较,modetest 以 kHz 为单位报告该模式。

5. 检查本次启动的内核消息和实时显示事件

运行以下命令:
此命令仅显示本次启动的 DisplayPort 和 DRM 消息。如果未返回任何内容,请在重现问题的同时捕获实时数据。

参考输出

要在重现问题时捕获显示事件,请运行以下命令:
此命令会持续跟踪新的 Weston 和内核消息。运行时请勿使用 -k,以便输出中包含合成器的连接器变化和输出启用信息。重现问题后,按 Ctrl+C。查找连接器状态变化、EDID 或模式检测、输出启用以及驱动程序错误。将相关消息与连接器状态和活动 DRM 状态进行比较。AUX 或 DPCD 超时表明电缆或端口存在问题,链路训练失败则表明链路质量存在问题。

6. 解读结果

在检查输出布局之前验证 Weston 服务。运行以下命令:
预期结果为 active。如果该服务未处于活动状态,请先执行 重新启动 Weston,然后再继续。

7. 检查 Weston 和输出布局

运行以下命令:
此命令会显示本次启动中最新的 Weston 消息。如果 Weston 处于活动状态但显示屏为黑屏,请运行以下命令:
此命令会列出可用的 Wayland 套接字名称。替换占位符后,运行以下命令:
将 Weston 输出与 DRM 状态进行比较。此命令会打印 Weston 输出信息。找到所选的显示输出,并将其与 DRM 连接器和 CRTC 状态进行比较。如果 Weston 未处于活动状态,请先执行 重新启动 Weston,然后再继续。