linux DRM/KMS 测试工具 modetest、kmscude、igt-gpu-tools


一:modetest

是由libdrm提供的测试程序,可以查询显示设备的支持状况,进行基本的显示测试,以及设置显示的模式。

源码下载:libdrm的下载链接:https://dri.freedesktop.org/libdrm/libdrm-2.4.100.tar.bz2

1 # ./configure
2 # Make -j4

编译完成后会在目录libdrm-2.4.100/tests/modetest下生成 modetest 可执行文件。

modetest示例:
modetest的运行需要root权限。
 
首先这里给出一组显示示例,命令参数如下:
1 ./modetest -M vc4 -D 0 -a -s 32@140:1920x1080  -P 173@140:1920x1080 -Ftiles

程序运行效果是,通过HDM连接的显示器整屏的显示了渐变的斜条纹:

通过--help参数可以查看modetest支持的全部选项,如下:

1 ./modetest --help

下面的命令可以查看目前所在平台支持的分辨率

1 modetest -M  所在平台的du的名字

 

二:kmscube

是由mesa3d提供和维护,这是一个基于 KMS/GBM/EGL/OPENGL ES2.0 测试用例。
kmscude不依赖X11、wayland等窗口系统的简单图像测试程序。
GBM、EGL和OpenGL ES产生图形数据,再经由DRM/KMS显示。
GBM、EGL和OpenGL ES由mesa3D提供相关的库,DRM/KMS通过libdrm库进行访问。
所以kmscude同时包含OpenGL、EGL、GBM和DRM/KMS的基本用法。
 
 
编译
1 meson . build && ninja -C build

编译成功后,build路径下会生成可执行文件:

1 ls build/
2 build.ninja             kernel.trace   kmscube-l.profile   kmscube.profile  'kmscube@exe'/   meson-logs/      oprofile_data/  'texturator@exe'/
3 compile_commands.json   kmscube*       kmscube.1.trace     kmscube.trace     meson-info/     meson-private/   texturator*

通过如下命令查看kmscude的帮助信息:

1 ./kmscube --help

基本用法

1 sudo ./kmscube -A -D /dev/dri/card0 -M smooth
说明:
    -A:DRM/KMS使用atomic模式
    -D:指定设备节点,DRM/KMS和GPU是同一个设备节点
    -M:指定OpenGL的绘图模式,可选的值包括:smooth、rgba、nv12-2img、nv12-1img
 
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM