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
http://www.rzrgm.cn/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
解決:

本文來自博客園,作者:瀟汀,轉載請注明原文鏈接:http://www.rzrgm.cn/allalonewithyou/p/19178978,個人郵箱:yaonie4444@foxmail.com

浙公網安備 33010602011771號