RK3588关于panthor驱动的移植
正在施工
RK3588关于panthor驱动的移植
除了gnome之外,用的GPU驱动都是arm官方的闭源驱动libmali,只支持openGL ES和openCL。
由于wayland方式需要openGL支持,而openGL ES仅仅是openGL的子集,所以官方驱动其实并不支持wayland方式。
也就是说,使用官方驱动的镜像都只能使用xorg的显示服务器。
主要是 Valhall(Mali-G57, Mali-G610 ...)支持
mali GPU 系列:Mali Midgard(T7xx/T8xx)、Bifrost(Gxx)、Valhall(G6x/G7x)。
到6.10就是合入主线内核,直接支持了。
“Arm Mali-G310、Mali-G510、Mali-G610 和 Mali-G710 GPU 的 Panthor 开源驱动程序将成为 Linux 6.10 的一部分 ”一致性测试在 Linux 6.10.0-rc1 下的 Rock5b 板上运行。
开源官方链接:[https://www.cnx-software.com/2024/07/18/panthor-open-source-driver-achieves-opengl-es-3-1-conformance-with-arm-mali-g610-gpu-rk3588-soc/]
Panthor 开源方案与 Mesa 图形库的技术解析
[https://blog.csdn.net/froxy/article/details/148599546]
panthor的开源官方仓库:
[https://www.collabora.com/news-and-blog/news-and-events/release-the-panthor.html]
mesa3文档:
[https://docs.mesa3d.org/drivers/panfrost.html]
橘子派的panthor支持:
[https://github.com/WillzenZou/linux-orangepi/releases/tag/rk3588-panthor-v0.2]
https://docs.radxa.com/rock5/rock5a/radxa-os/mali-gpu?Driver=Panfrost%2FPanthor
https://www.cnblogs.com/zyly/p/17459196.html#_label0_1
https://www.khronos.org/conformance/adopters/conformant-products#submission_939
存放rk3588开源panthor驱动的镜像仓库:(并不好用)
[https://gitee.com/yuunnn-w/rk3588-panthor-v0.2#https://gitee.com/link?target=https%3A%2F%2Fgithub.com%2FWillzenZou%2Flinux-orangepi%2Freleases%2Ftag%2Frk3588-panthor-v0.2]
export http_proxy=http://192.168.1.244:7890
export https_proxy=http://192.168.1.244:7890
git clone https://gitlab.freedesktop.org/panfrost/linux.git
git checkout panthor-next+rk3588
cp -rf drivers/gpu/drm/panthor ../../RK3588/xxx-RK3588-MB-kernel-6.1/kernel/drivers/gpu/drm/
make rockchip_linux_defconfig ARCH=arm64
查看两个分支的交点:
panthor-v3+rk3588
panthor-v5+rk3588
git merge-base panthor-v5+rk3588 panthor-v3+rk3588
就知道从哪里开始改的了。
5.10版本mesa/panfrost支持
[https://github.com/ChisBread/rk3588-gaming-step-by-step/blob/main/gpu-envs.md]
问题:
root@linaro-alip:~# dmesg |grep panthor
[ 3.467526] panthor fb000000.gpu-panthor: [drm] clock rate = 198000000
[ 3.468398] panthor fb000000.gpu-panthor: [drm] mali-g610 id 0xa867 major 0x0 minor 0x0 status 0x5
[ 3.468409] panthor fb000000.gpu-panthor: [drm] Features: L2:0x7120306 Tiler:0x809 Mem:0x301 MMU:0x2830 AS:0xff
[ 3.468416] panthor fb000000.gpu-panthor: [drm] shader_present=0x50005 l2_present=0x1 tiler_present=0x1
[ 3.469544] panthor fb000000.gpu-panthor: [drm] Firmware protected mode entry not be supported, ignoring
[ 3.469605] panthor fb000000.gpu-panthor: [drm] Firmware git sha: 814b47b551159067b67a37c4e9adda458ad9d852
[ 3.469719] panthor fb000000.gpu-panthor: [drm] CSF FW using interface v1.1.0, Features 0x0 Instrumentation features 0x71
[ 3.469953] [drm] Initialized panthor 1.3.0 20230801 for fb000000.gpu-panthor on minor 1
解决:
# 内核配置:
CONFIG_ENERGY_MODEL=y
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y # EAS 相关
kernel/power/energy_model.c 是 Linux 内核中与 能量模型(Energy Model, EM) 相关的核心实现文件,主要用于为系统中的设备(尤其是 CPU)提供能耗行为的抽象模型。
检查当前 GL 渲染器
glxinfo | grep "OpenGL renderer"
# 驱动:
root@linaro-alip:~# sudo cat /sys/kernel/debug/dri/*/name
rockchip dev=display-subsystem unique=display-subsystem
rockchip dev=display-subsystem unique=display-subsystem
panthor dev=fb000000.gpu-panthor unique=fb000000.gpu-panthor
rknpu dev=fdab0000.npu unique=fdab0000.npu
panthor dev=fb000000.gpu-panthor unique=fb000000.gpu-panthor
rknpu dev=fdab0000.npu unique=fdab0000.npu
mesa库
apt remove libmali-*
apt install aptitude
问题:
驱动加载成功但是运行glmark2失败。

桌面:
# 检查
ps aux | grep Xorg
# 重新安装高版本的
sudo apt list -a xserver-common xserver-xorg-core xserver-xorg-legacy
sudo apt install xserver-common xserver-xorg-core xserver-xorg-legacy
解决:

本文来自博客园,作者:潇汀,转载请注明原文链接:https://www.cnblogs.com/allalonewithyou/p/19178978,个人邮箱:yaonie4444@foxmail.com

浙公网安备 33010602011771号