vc4-fkms-v3d 是树莓派的开源 GPU 驱动,支持 OpenGL 2.1。正确配置的情况下 mesa 应该使用 V3D 驱动而不是 llvmpipe,后者使用的是 CPU。树莓派本来就贫弱的 CPU 并不经得起桌面渲染的折腾。此外 Chrome 也应能打开大多数硬件加速。
首先需要切换到开源驱动。前往 raspi-config -> Advanced Options -> GL Driver -> GL (Fake KMS)。树莓派 4 是默认使用这个开源驱动的。
然后我在桌面环境使用 screenfetch 的时候发现桌面渲染使用的是 llvmpipe 而不是 V3D。这个问题出在 /usr/share/X11/xorg.conf.d/99-fbturbo.conf 这个文件。理论上从闭源驱动切换至开源驱动的时候 raspi-config 应当自动修改这个文件。我曾尝试直接删除这个文件,虽然这样可以使用 V3D 驱动了,但是无法自动检测屏幕分辨率,Chrome 的硬件加速也不正常。可行的修改方式是进入这个文件,删除 Driver “fbturbo” 这一行,保留其他设置。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# This is a minimal sample config file, which can be copied to # /etc/X11/xorg.conf in order to make the Xorg server pick up # and load xf86-video-fbturbo driver installed in the system. # # When troubleshooting, check /var/log/Xorg.0.log for the debugging # output and error messages. # # Run "man fbturbo" to get additional information about the extra # configuration options for tuning the driver. Section "Device" Identifier "Allwinner A10/A13 FBDEV" # Driver "fbturbo" Option "fbdev" "/dev/fb0" Option "SwapbuffersWait" "true" EndSection |
为什么我的树莓派上干脆没有这个文件,3 3B 4 ,三个设备都没有
试试 sudo apt-get install xserver-xorg-video-fbturbo?