RK 系列 GPU 驱动检查方法

问题背景

在调试一块板卡时发现 GPU 驱动存在异常。当时通过 GST 播放视频,想查看 GPU 占用率,却发现按照 RK 系列通常的查询方法无法获取(设备节点不存在),由此怀疑 GPU 驱动未正常加载。

检查方法

方法一:查看启动信息

通过dmesg命令过滤 GPU 相关日志,判断驱动加载状态:

dmesg | grep gpu
  • 正常状态输出示例
[    5.136204] panfrost ff9a0000.gpu: clock rate = 500000000
[    5.144160] panfrost ff9a0000.gpu: mali-t860 id 0x860 major 0x2 minor 0x0 status 0x0
[    5.152968] panfrost ff9a0000.gpu: features: 00000000,00000407, issues: 00000000,24040400
[    5.162213] panfrost ff9a0000.gpu: Features: L2:0x07120206 Shader:0x00000000 Tiler:0x00000809 Mem:0x1 MMU:0x00002830 AS:0xff JS:0x7
[    5.175546] panfrost ff9a0000.gpu: shader_present=0xf l2_present=0x1
[    5.187126] [drm] Initialized panfrost 1.2.0 20180908 for ff9a0000.gpu on minor 
  • 异常状态输出示例
[    6.440454] vdd_gpu_s0: supplied by vcc_sys
[    6.444184] vdd_gpu_s0: 550 <--> 900 mV at 750 mV at 3000 mA, enabled
[    7.243266] rockchip-pm-domain 27380000.power-management:power-controller: Looking up gpu-supply from device tree
[    7.243308] rockchip-pm-domain 27380000.power-management:power-controller: Looking up gpu-supply property in node /power-management@27380000/power-controller failed
[    7.243381] mali 27800000.gpu: Kernel DDK version g25p0-00eac0
[    7.243400] mali 27800000.gpu: error -ENXIO: IRQ JOB not found
[    7.243512] mali 27800000.gpu: error -ENXIO: IRQ MMU not found
[    7.243544] mali 27800000.gpu: error -ENXIO: IRQ GPU not found
[    7.243571] mali 27800000.gpu: Insufficient register space, will override to the required size
[    7.243579] mali 27800000.gpu: Register window unavailable
[    7.243583] mali 27800000.gpu: Failed to map registers
[    7.243587] mali 27800000.gpu: Register map failed error = -5
[    7.243592] mali 27800000.gpu: Device initialization failed
[    7.243619] mali: probe of 27800000.gpu failed with error -5
[   11.249438] panfrost 27800000.gpu: clock rate = 198000000
[   11.249602] panfrost 27800000.gpu: Looking up mali-supply from device tree
[   11.254671] panfrost 27800000.gpu: EM: OPP:600000 is inefficient
[   11.254682] panfrost 27800000.gpu: EM: OPP:500000 is inefficient
[   11.254687] panfrost 27800000.gpu: EM: OPP:400000 is inefficient
[   11.254691] panfrost 27800000.gpu: EM: OPP:300000 is inefficient
[   11.254836] panfrost 27800000.gpu: EM: created perf domain
[   11.255212] panfrost 27800000.gpu: mali-g52 id 0x7402 major 0x1 minor 0x0 status 0x0
[   11.255224] panfrost 27800000.gpu: features: 00000000,00000cf7, issues: 00000000,00000400
[   11.255230] panfrost 27800000.gpu: Features: L2:0x07120206 Shader:0x00000002 Tiler:0x00000209 Mem:0x1 MMU:0x00002823 AS:0xff JS:0x7
[   11.255236] panfrost 27800000.gpu: shader_present=0x7 l2_present=0x1
[   11.292217] [drm] Initialized panfrost 1.2.0 20180908 for 27800000.gpu on minor 2

方法二:检查中断状态

GPU 正常工作时会频繁产生中断,若中断数量为 0 则说明工作异常:

cat /proc/interrupts

方法三:OpenGL/OpenGLES 支持检测

前置准备

安装检测工具:

sudo apt install mesa-utils libgl1-mesa-dev libgles2-mesa-dev libegl1-mesa-dev

注意事项

  • 必须在桌面环境的终端中执行检测命令,不可通过 SSH 或串口终端,否则会始终显示llvmpipe(CPU 模拟模式)。

分驱动类型检测

  1. RK 官方驱动(支持 OpenGLES)
es2_info | grep GL_RENDERER
  • 正常:输出包含mali(GPU 硬件加速)

  • 异常:输出llvmpipe(CPU 模拟)

  1. 社区开源驱动 Panfrost(支持 OpenGL)
glxinfo -B | grep renderer
  • 正常:输出包含mali(GPU 硬件加速)

  • 异常:输出llvmpipe(CPU 模拟)

补充说明

  • 社区开源驱动 Panfrost 的跑分表现通常优于官方驱动。

参考文章

  1. 《香橙派 5 rk3588/rk3588s benchmark sbc bench 性能测试 OpenGL 跑分基于香橙派 5 plus》

    https://www.bilibili.com/opus/746803008049774646?spm_id_from=333.1387.0.0

  2. 《Rockchip RK3399 - Mali-T860 GPU 驱动(mesa+Panfrost)》

    https://www.cnblogs.com/zyly/p/17459196.html

posted @ 2025-10-08 13:27  逸俊晨晖  阅读(66)  评论(0)    收藏  举报