按照在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
+关注
关注
1文章
286浏览量
36999 -
MPSoC
+关注
关注
0文章
126浏览量
23926
发布评论请先 登录
相关推荐
嵌入式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_kms的QT应用程序
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次下载
嵌入式Linux的Qt
eglfs_kms后端的eglfs先进的eglfs_kms功能带有eglfs_kms_egldevice后端的eglfsKMS / DRM上具有多个屏幕的系统中的触摸输入带有其他后端
发表于 11-01 17:06
•3次下载
在MPSoC上运行基于eglfs_kms的QT应用程序
EGLFS可以让QT应用直接运行在EGL和OpenGL ES 2.0上。也就是,可以在没有窗口管理器(windowing system like X11 or Wayland)的情况下,运行QT软件。对于有GPU的嵌入式Linux系统,建议使用
在MPSoC上运行QT应用程序
MPSoC支持4种libMali的backend: X11, Wayland/GBM, Fbdev, Headless-EGL。QT支持4种plugin(插件)或者backend,FB,X11,Wayland,eglfs。对不同的plugin(插件)或者backend,QT应用层是一样的。
在ZCU106单板上验证Xilinx超低延时编解码方案
在ZCU106单板上可以验证。文档MPSoC VCU TRD 2020.2 Low Latency XV20 提供了详细命令。 缺省情况下,编码使用的是PS
如何在zcu106之间运行1588?
在zcu106之间运行1588 下面的命令,在zcu106之间运行1588。运行顺序是先在第一块单板(master)启动1588 master;再在第二块
ZCU106在PLDDR实现超低延时编码
在ZCU106单板上可以验证。文档MPSoC VCU TRD 2020.2 Low Latency XV20 提供了详细命令。缺省情况下,编码使用的是PS DDR
发表于 08-02 09:12
•388次阅读
ZCU106的超低延时gstreamer编解码命令
在ZCU106单板上可以验证。文档MPSoC VCU TRD 2020.2 Low Latency NV16 提供了详细命令。下面的命令,能表现得更加稳定。
发表于 08-02 16:31
•773次阅读
评论