0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

在MPSoC ZCU106单板的HDMI-Tx上基于eglfs_kms的运行QT应用程序

李玉兰 来源:doublelove 作者:doublelove 2022-08-02 09:04 次阅读

按照MPSoC上运行基于eglfs_kms的QT应用程序, 可以在MPSoC ZCU106单板的DP上基于eglfs_kms的运行QT应用程序。按照在VCUTRD 2020.1 里设置HDMI-TX显示QT界面, 可以在MPSoC ZCU106单板的HDMI-Tx上基于X11的运行QT应用程序。在HDMI-Tx上,基于eglfs_kms的运行QT应用程序,遇到了下列两个错误。

错误1

QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/var/volatile/tmp/runtime-root'
Setting framebuffer size is only available with DRM atomic API
Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.
Could not queue DRM page flip on screen HDMI1 (Invalid argument)
Could not queue DRM page flip on screen HDMI1 (Invalid argument)

错误2

QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/var/volatile/tmp/runtime-root'
Framebuffer size format is invalid.
Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.
Failed to commit atomic request (code=-22)

基于在VCUTRD 2020.1 里设置HDMI-TX显示QT界面做更改后,执行下列命令,可以在MPSoC ZCU106单板的DP上基于eglfs_kms的运行QT应用程序。其中的$display_device和$connector_id,需要根据单板更改。display_device一般是类似a0070000.v_mix的格式,可以通过“dmesg | grep v_mix”查到。$connector_id,可以在“modetest -D $display_device”的输出里查找, 也可以根据检查Linux DRM显示设备ID的脚本 得到。

update-alternatives --install /usr/lib/libMali.so.9.0 libmali /usr/lib/wayland/libMali.so.9.0 90

echo Y > /sys/module/xlnx_mixer/parameters/mixer_primary_enable

modetest -D $display_device -s $connector_id:1920x1080-60@AR24

killall Xorg
cat /run/kms.conf

export QT_QPA_PLATFOR
export QT_QPA_EGLFS_KMS_ATOMIC=1
export QT_QPA_EGLFS_INTEGRATIO
export QT_QPA_EGLFS_KMS_CONFI
export QT_QPA_EGLFS_DEBU
export QT_QPA_EGLFS_FORCE888=1

# chmod +x /run/qt5everywheredemo-1.0/QtDemo
# /run/qt5everywheredemo-1.0/QtDemo

ls -l /usr/share/examples/opengl/
/usr/share/examples/opengl/cube/cube
/usr/share/examples/opengl/textures/textures

如果运行失败,有时执行“ctrl+c”还不能退出QT应用程序cube和textures,还需要执行命令“kill -9 ”, 或者“killall -9 cube”,才能让其退出。

上述的/run/kms.conf内容如下:

{
  "device": "/dev/dri/card1",
  "hwcursor": false,
  "pbuffers": true,
  "outputs": [
    {
      "name": "HDMI",
      "mode": "1920x1080"
    }
  ]
}

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Qt
    Qt
    +关注

    关注

    1

    文章

    286

    浏览量

    36999
  • MPSoC
    +关注

    关注

    0

    文章

    126

    浏览量

    23926
收藏 人收藏

    评论

    相关推荐

    ZCU102,ZCU104和ZCU106有什么区别?

    ZCU104是ZCU102和ZCU106的升级版本,具有支持机器学习的额外功能,但更便宜?最好的祝愿,花环
    发表于 10-22 09:19

    如何运行基于eglfs_kmsQT应用程序

    eglfs_kms。本文的命令可以Xilinx的ZCU102和ZCU106单板运行。所有测试基于ZCU102和
    发表于 01-07 17:13

    如何在MPSoC运行基于eglfs_kmsQT应用程序

    MPSoC运行基于eglfs_kms
    发表于 02-19 08:01

    嵌入式Linux的Qt相关资料分享

    eglfs_kms后端的eglfs先进的eglfs_kms功能带有eglfs_kms_egldevice后端的eglfsKMS / DRM具有多个屏幕的系统中的触摸输入带有其他后端
    发表于 11-04 08:22

    i.mx8m如何同时两个显示器显示相同的应用程序

    HDMI双显(两台显示器需要同时显示相同的内容)。我 dts 文件中启用了 DSI 和 HDMI 显示。 我开发了一个
    发表于 05-06 06:47

    【工程师分享】MPSoC运行基于eglfs_kmsQT应用程序

    MPSoC支持4种libMali的backend: X11, Wayland/GBM, Fbdev, Headless-EGL。QT支持4种plugin(插件)或者backend,FB,X11,Wayland,eglfs。对不同的plugin(插件)或者backend,QT应用层是一样的。
    发表于 03-08 06:18 1次下载
    【工程师分享】<b>在</b><b>MPSoC</b><b>上</b><b>运行</b>基于<b>eglfs_kms</b>的<b>QT</b><b>应用程序</b>

    嵌入式Linux的Qt

    eglfs_kms后端的eglfs先进的eglfs_kms功能带有eglfs_kms_egldevice后端的eglfsKMS / DRM具有多个屏幕的系统中的触摸输入带有其他后端
    发表于 11-01 17:06 3次下载
    嵌入式Linux的<b>Qt</b>

    基于ZCU106单板的功耗优化

    MPSoC PS侧的最低功耗,基于ZCU106单板做了功耗优化
    的头像 发表于 10-10 16:43 1703次阅读
    基于<b>ZCU106</b><b>单板</b>的功耗优化

    MPSoC运行基于eglfs_kmsQT应用程序

    EGLFS可以让QT应用直接运行在EGL和OpenGL ES 2.0。也就是,可以没有窗口管理器(windowing system like X11 or Wayland)的情况下,运行QT软件。对于有GPU的嵌入式Linux系统,建议使用
    的头像 发表于 01-14 10:29 3502次阅读

    MPSoC运行QT应用程序

    MPSoC支持4种libMali的backend: X11, Wayland/GBM, Fbdev, Headless-EGL。QT支持4种plugin(插件)或者backend,FB,X11,Wayland,eglfs。对不同的plugin(插件)或者backend,QT应用层是一样的。
    的头像 发表于 02-08 14:34 2099次阅读

    ZCU106单板验证Xilinx超低延时编解码方案

    ZCU106单板可以验证。文档MPSoC VCU TRD 2020.2 Low Latency XV20 提供了详细命令。 缺省情况下,编码使用的是PS
    的头像 发表于 05-07 15:30 5907次阅读
    <b>在</b><b>ZCU106</b><b>单板</b><b>上</b>验证Xilinx超低延时编解码方案

    如何在zcu106之间运行1588?

    zcu106之间运行1588 下面的命令,zcu106之间运行1588。运行顺序是先在第一块单板(master)启动1588 master;再在第二块
    的头像 发表于 05-13 14:22 3006次阅读

    ZCU106PLDDR实现超低延时编码

    ZCU106单板可以验证。文档MPSoC VCU TRD 2020.2 Low Latency XV20 提供了详细命令。缺省情况下,编码使用的是PS DDR
    发表于 08-02 09:12 388次阅读
    <b>ZCU106</b><b>在</b>PLDDR实现超低延时编码

    ZCU106的超低延时gstreamer编解码命令

    ZCU106单板可以验证。文档MPSoC VCU TRD 2020.2 Low Latency NV16 提供了详细命令。下面的命令,能表现得更加稳定。
    发表于 08-02 16:31 773次阅读

    ZCU106开发板的仅限TX的设计内实现UHD-SDITX子系统

    ZCU106 开发板为目标,创建和运行仅限 TX 的设计
    的头像 发表于 07-10 16:36 212次阅读
    <b>在</b><b>ZCU106</b>开发板<b>上</b>的仅限<b>TX</b>的设计内实现UHD-SDITX子系统