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 版本、配置、内核版本和镜像校验值。