基于rk3588/linux_release_v1.0.6c编译构建出来的固件mali驱动有问题

固件类型:自行编译的固件
SDK包名称:rk3588_linux_release_20221012_v1.0.2a.xml
SDK修改内容:无
Log日志:var_log.tar.gz

固件生成步骤:
1、从百度网盘下载rk3588_repo_sdk_v1.0.2a.7z
2、解压后,执行repo得到初始化后的SDK
3、下载bundle,其中把目前最新释放出来的rk3588-v1.0.6b-to-v1.0.6c.7z也下载下来
4、使用update.sh升级所有下载下来的bundle
5、下载最新的Ubuntu20.04-Gnome_RK3588_v2.20-4_20221124.7z将其解压后作为ubuntu_rootfs/rootfs.img
6、sudo ./build.sh roc-rk3588s-pc-ubuntu.mk && sudo ./build.sh
得到构建出来的img,将其烧录到ROC-RK3588S-PC后,显示器有信号,但是黑屏。
看dmesg能到这样的错误:
kernel: mali fb000000.gpu: Firmware header version 0.1 not understood
kernel: mali fb000000.gpu: Firmware initialization failed
通过查看代码感觉是驱动代码和mali_csffw.bin不匹配导致的。
如果回退到v1.0.2a版本则无上述错误,麻烦解决一下,谢谢。
tchip_askquestions
var_log.tar.gz (306 KB)

补充下,在v1.0.2a版本上构建的镜像,烧录到板子上后能看到dmesg的打印是:mali fb000000.gpu: Loading Mali firmware 0x1010000

v1.0.6的gpu固件:81ad0f6bfb231fefd460e46ee2f26511 firmware/g610/mali_csffw.bin

对应的git commit是:

在v1.0.6c版本上如果强行修改驱动代码,显示出问题的那段代码改成和v1.0.2那样的,也就是删除version_minor != FIRMWARE_HEADER_VERSION_MINOR,则会出现新的错误:
[ 35.657771] mali fb000000.gpu: Loading Mali firmware 0x1010000
[ 35.657796] mali fb000000.gpu: Memory setup entry too short to contain virtual_exe_start
[ 35.657852] mali fb000000.gpu: Failed to load firmware image
[ 35.657942] mali fb000000.gpu: Firmware initialization failed

请教,我这里同步代码出现问题:
.repo/repo/repo sync -l

error: in sync -l: [Errno 2] No such file or directory: ‘/home/topeet/3-fire/AIO-3588JQ-SDK/rk3588_linux_release_20230114_v1.0/.repo/manifests/.git/HEAD’

error: manifest missing or unreadable – please run init

本帖最后由 铁锅鱼 于 2023-12-10 21:16 编辑

ainstecYang 发表于 2023-2-8 09:00
在v1.0.6c版本上如果强行修改驱动代码,显示出问题的那段代码改成和v1.0.2那样的,也就是删除version_minor …
根文件系统中打包的固件不对应。下面这个是OK的。
Ubuntu20.04-Gnome_RK3588_v2.40-1_20230414.7z