RK3588开源GPU移植流程

一、资料

1.第三方开源内核下载地址:https://github.com/armbian/linux-rockchip

2.根文件系统下载地址:https://github.com/radxa-build/rock-5t/releases/download/rsdk-r5/rock-5t_bookworm_kde_r5.output_512.img.xz

3.kernel官网最新版内核(6.18)中才包含panthor驱动,mesa3D v24.1开始支持panthor驱动(panfrost/drm-shim/panfrost_noop.c)

二、准备

1.提取rootfs:下载完后解压img镜像文件,通过fdisk -l查看img分区,找到第三个分区开始扇区和扇区长度,通过dd命令将第三分区提取出来(如:dd if=rock-5t_bookworm_kde_r5.output_512.img of=rootfs.img bs=512 count=66142 skip=1542)。

2.修改root密码:挂载rootfs.img文件到/mnt目录,打开/mnt/etc/shadow文件更改root密码(密码需要hash算法转换,不会可以先从系统shadow文件中复制一个密码用)

3.配置内核defconfig:1)配置defconfig文件GPU驱动,关闭mali bifrost驱动并开启Panthor驱动( Device Drivers > Graphics support > Panthor (DRM support for ARM Mali CSF-based GPUs))。2)通过配置defconfig捆绑GPU固件文件到内核img内(CONFIG_EXTRA_FIRMWARE="mali_csffw.bin" CONFIG_EXTRA_FIRMWARE_DIR="drivers/gpu/arm/bifrost/")

4.配置内核设备树:关闭GPU(&gpu{status:disable};)开启panthor(&panthor{status:okey};)

三、编译内核

1.将开源内核解压到rk3588 sdk根目录并创建软连接kernel指向该目录(原SDK kernel也是指向kernel-6.1的软连接文件,删除即可)。

2.编译:./build.sh kernel

四、刷写镜像

1.由于本次移植没有编译完整镜像,需要先在HMI上刷写hmi 5.1版完整镜像文件。

2.刷写完镜像后再单独刷写通过第三方内核编译出来的boot.img和第三方img文件提取出来的三个分区镜像文件rootfs.img

五、确认驱动是否开启

1.登录系统后先创建一个普通用户(如:adduser test),将用户添加到/etc/sudoer文件内。

2.切换到普通用户内(su test)并设置好显示环境变量(export DISPLAY=:0),执行glxinfo | grep "OpenGL renderer",如能看到 Mali-G610 (Panfrost)表明开源GPU驱动已启用。

相关推荐
Maynor9969 分钟前
Claude Desktop 桌面端全流程指南(含国内直连配置)
人工智能·开源
zzzzzz3101 小时前
别急着把动效组件搬进页面:从 react-bits 看 React 动效库该怎么评估
前端·react.js·开源
小小龙学IT13 小时前
FlatBuffers 深度解析:Google 开源零拷贝序列化库完全指南
c++·开源
学习星球14 小时前
Hono 框架入门实战:从开源项目 Hono 开始
开源
m4Rk_15 小时前
【论文阅读】Agent 记忆机制(47):Nemori——用“预测误差”判断什么经验值得被记住
论文阅读·人工智能·学习·开源·github
TunerT_TQ16 小时前
Microsoft |Playwright CLI 源码静态审阅:从 5 个文件看浏览器自动化工具的工程边界
后端·开源·github
残 风17 小时前
PostgreSQL 存储机制详解
数据库·postgresql·开源·数据库开发
fthux19 小时前
被主流遮住的世界:那些不常见却值得认识的编程语言
人工智能·ai·开源·github
小妖同学学AI19 小时前
开源向量数据库的王者:Milvus 深度解析,专为 AI 应用打造的云原生搜索引擎!
数据库·开源·milvus
william_yangshun19 小时前
【AI Agent 实战】cindy 中文版:开箱即用的开源 AI 代理上手指南
人工智能·开源