宏远天翔 Wiki

A7-3588 · 系统

Linux BSP 与固件编译

A7-3588 的 Linux 开发使用 RK3588 BSP,提供 Linux 5.10 和 Linux 6.1 两条内核路线。选择路线时,同时配套该版本的设备树、驱动、根文件系统与打包配置。PCIe 3.0 ×4 在本产品中用于连接 FPGA。

主机与工程结构

在 x86_64 Linux 电脑上交叉编译。5.10 工程使用 Ubuntu 18.04 环境,6.1 工程使用 Ubuntu 20.04 环境;可使用相应容器保持工具版本一致。工程放在本地英文路径中,以普通用户编译。依赖包括 Git、Make、GCC、CMake、Bison、Flex、OpenSSL 开发库、设备树编译器及 SDK 所需的多架构工具。

路径内容
device/rockchip/rk3588/板级配置、设备树选择和分区配置
kernel/当前工程使用的内核源码入口
u-boot/引导程序源码
prebuilts/交叉编译工具链
rkbin/启动相关二进制组件
tools/打包与升级工具

Linux 6.1

将对应的预编译根文件系统放入 prebuilt_rootfs/,按目标系统配置其镜像路径。在 SDK 根目录列出配置并选择工程交付的产品配置,再构建:

./build.sh lunch
./build.sh all

统一镜像输出至 output/update/update.img。完成首次完整构建后,可按修改内容执行增量编译:

./build.sh uboot
./build.sh extboot
./build.sh updateimg

其中引导镜像为 u-boot/uboot.img,内核启动镜像为 kernel/extboot.img。

Linux 5.10

板级配置使用 .mk 文件,记录内核配置、设备树、分区表和根文件系统路径。选择工程中的产品配置,并放好对应根文件系统后,在 SDK 根目录运行:

./build.sh

统一固件位于 rockdev/pack/。分步构建可使用 ./build.sh uboot、./build.sh extboot,随后运行 ./mkfirmware.sh 更新镜像链接,并执行 ./build.sh updateimg 打包。

固件发布前,完成冷启动、显示、网络、USB、摄像头、音频及 FPGA 链路检查,并记录 SDK 版本、配置、内核版本和镜像校验值。