This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM62P:AM62P - Weston 扩展显示问题

Guru**** 2689775 points

Other Parts Discussed in Thread: AM62P

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1593708/am62p-am62p---weston-extended-display-issue

部件号: AM62P

您好、
我使用的是 AM62P、它启用了两个输出、即双链路 OLDI 和 DSI。 我使用两个具有相同时序参数的输出、这些参数按照面板的数据表进行使用 modetest 命令进行验证。

但是、在通过以下命令以扩展模式使用 Weston 时、

Weston --backend=drm-backend.do --drm-device=card0 --additional-devices=card1  
glmark2-ES2-wayland -s 2560x1024

我能够看到屏幕撕裂正好在两个显示器的中间(特别是当立方体旋转在 glmark2-ES2-wayland )。 显示屏一侧的更新速度似乎比另一侧快、当显示器从一个移动到另一个时、这会导致屏幕撕裂。  

导致此问题的原因是什么以及如何继续?

此致、

Harithan。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Harithan、
    您能分享 pic 一下所看到的内容吗?

    此外、为了验证您的 OLDI 和 DSI 单独设置(如果可行,您是否也可以共享面板的器件型号)、  
    您是否可以尝试运行以下内容并在两个屏幕上都能看到平滑的显示:

    kmstest --flip --device=/dev/dri/by-path/platform-30200000.dss-card
    kmstest --flip --device=/dev/dri/by-path/platform-30220000.dss-card


    当您反转卡片的顺序时会发生什么情况、如中所示:
    weston --backend=drm-backend.do --drm-device=card1 --additional-devices=card0


    同一个屏幕是否仍缓慢更新、或者是否发生了变化?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Divyansh Mittal:

    我已经分别验证了 OLDI 和 DSI 连接器的输出。

    在扩展模式下、


    Weston --backend=drm-backend.so --drm-device=card0 --additional-devices=card2 &  

    glmarak2-ES2-wayland -s 2560x1024

    发现 dss0 的中断比 DSS1 少、并且在作为扩展模式运行时、它表现为屏幕撕裂

    是初始的
    -----
    CAT /proc/interrupts | grep tidss
    436:     691.      0      0      0   GICv3 62 级   标准
    437:     403.      0      0      0   GICv3 116 级   标准

    在运行和终止应用程序之后
    --------------------------------------------
    CAT /proc/interrupts | grep tidss
    436:    3788      0      0      0   GICv3 62 级   标准
    437:    3491.      0      0      0   GICv3 116 级   标准


    我的问题、
    1.这是个问题吗? 因为帧丢弃似乎随时间的推移而增加。

    2、为什么仅在 DSS0(OLDI 连接器)中出现此行为?

    3.如何继续?

    此致、
    Harithan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、
    感谢您的观察。
    请允许我尝试在我这边重现你的问题 将在本周结束前做出回应。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Harithan

    我执行了以下操作:
    1.编辑: /usr/share/wayland-sessions/weston.desktop 文件、以便在 Exec 中包括以下内容:
       Exec=Weston --drm-device=card0 --additional-devices=card1
    2.重新启动
    3.运行: WAYLAND DISPLAY=wayland-1 QT_QPA_PLATFORM=wayland XDG_RUNTIME_DIR=/run/user/1000 glmark2-ES2-wayland

    我得到以下信息:

    e2e.ti.com/.../IMG_5F00_9861.mov

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Divyansh Mittal:

    1.在您上传的视频中,两个输出都具有不同的分辨率和最终不同的时序参数。 我告诉过、我对 DSS0(双链路 OLDI)和 DSS1 (DSI) 使用相同的时序参数、每个参数的分辨率为 1280x1024。

    2、我的实际液晶屏之间没有任何标准挡板,所以默认情况下它就像一个标准的全屏硬件。 但是,在你的设置之间有边框,因为你不能看到屏幕撕裂的效果,而运行“glmark2-ES2-wayland"。“。

    我的观察:

    忘记 Weston。 为了缩小到实际问题,我尝试了以下命令一个一个执行 5 分钟(300 秒),

    是初始的

    -----

    root@am62pxx-EVM:~# cat /proc/interrupts | grep tidss
    436 :    1296      0      0      0   GICv3 62 级   标准
    437:    1027      0      0      0   GICv3 116 级   标准

    kmscube
    ---------------

    kmscube --device=/dev/dri/card0(适用于具有双链路 OLDI 的 DSS0)


    5 分钟 (LVDS)
    ---------------
    root@am62pxx-EVM:~# cat /proc/interrupts | grep tidss
    436 :    1296      0      0      0   GICv3 62 级   标准
    437:   19522      0      0      0   GICv3 116 级   标准

    差异:18495.

    kmscube --device=/dev/dri/card2(适用于带 DSI 的 DSS1)

    5 分钟 (DSI)
    -----
    root@am62pxx-EVM:~# cat /proc/interrupts | grep tidss
    436:   19874      0      0      0   GICv3 62 级   标准
    437:   19522      0      0      0   GICv3 116 级   标准

    差异:18578.

    18578-18495 = 83 (DSI — 双链路 OLDI)

    尽管我在 DSS0 和 DSS1 上运行 kmscube 应用程序的时长相同、但我们发现在 DSS0 中、中断次数似乎较少。 我想说、正因为如此、我的实际用例(扩展模式下的 Weston 具有撕裂效应)。 请让我知道,一旦你完成了这个,以及要做什么来避免这种情况。

    此致、

    Harithan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Harithan、  
    您能否分享 kmstest 的日志输出? 刷新率是否完全相同?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我的实际 LCD 面板之间没有任何标准边框、因此默认情况下它就像一个标准的全屏硬件。 但是,在您的设置中,中间有边框,因此您无法在运行“glmark2-ES2-wayland"时“时看到屏幕撕裂效果。

    而且、我不明白为什么这很重要。 我假设您将整个面板视为活动区域、而不是在边框中心留下一部分、因此每个视频端口将完全独立地填充屏幕。

    您能分享视频以及所看到的内容吗?

    我没有确切的分辨率 DSI 面板、因此在我这边实际上无法进行比较