DRM 图层查看 —— modetest
用 modetest 扒开底层图层
modetest 可以直接读取内核显示驱动的真实状态,告诉你 VOP2 到底吐出了几个图层 (Plane)。
- 安装工具:
sudo apt update
sudo apt install libdrm-tests
- 查看 Rockchip 的图层信息:
modetest -M rockchip -p
(注意:如果提示找不到命令,包名可能是 drm-info,可以用 sudo apt install drm-info,然后执行 drm_info)
怎么看结果:
向下滚动,找到 Planes 这一节。仔细看每个 Plane 的 type 字段:
- 如果有
type: Cursor,说明 VOP2 硬件确实划出了一个专属的光标图层,你的系统具备硬件光标能力。 - 如果只有
Primary(主画面)和Overlay(视频/3D叠加层),说明设备树里压根没开硬件光标,系统只能用软件光标。 - 判断当前谁在干活: 找到
Cursor那个 Plane,看它的CRTC_ID。如果等于 0,说明当前没在使用硬件光标;如果有具体的数字(且和你的屏幕 CRTC ID 一致),说明硬件光标正在生效。
以RK3588为例
查找关键字Esmart0-win0、Cluster0-win0,RK3588的8个图层一版是平均分配给4个VP的:
- 四个 Primary(主画面)图层:
- Plane 57 (Esmart0-win0) ->
value: 1 - Plane 79 (Esmart1-win0) ->
value: 1 - Plane 101 (Esmart2-win0) ->
value: 1 - Plane 123 (Esmart3-win0) ->
value: 1
- 四个 Overlay(叠加/视频)图层:
- Plane 145 (Cluster0-win0) ->
value: 0 - Plane 159 (Cluster1-win0) ->
value: 0 - Plane 173 (Cluster2-win0) ->
value: 0 - Plane 187 (Cluster3-win0) ->
value: 0

留下评论