TDA4VM 8.4 RTOS SDK 编译 MCU_R5F 的 SBL 与 MCUSW 步骤与方法
编译环境搭建
编译 RTOS SDK 时,我们需要在 linux 环境下编译,有两种方式可以获得 linux 环境:
- 在 windows 下使用 wsl 工具,下载 ubuntu 18.04 获得 linux 环境;
- 使用 vmware 搭建 ubuntu 虚拟机,获得 linux 环境。
(我使用的是第一种,但想来与第二种没什么区别)
SDK 包获取
官方 SDK 包下载路径如下: Processor-SDK-RTOS-J721E-08_04_00_06 这个 SDK 包含 R5 核与 A72 核的启动汇编文件,各外设驱动源码,外设测试用例,应用用例。 (这个 SDK 包架构庞大, makefile 框架很复杂,需要耐心分析,这个 SDK 包也包含了各种文档,请耐心阅读。)
编译过程中需要用到的工具
添加 aarch64 编译工具链到 SDK 中
根据 makefile 文件的需要,我们需要手动添加 aarch64 的编译工具链到 SDK 中,而且必须是这个版本的编译器,这是 makefile 文件指定的,除非修改 makefile 文件。
安装 mono 工具到 linux
编译过程中,需要用到 mono 工,可以参考如下的步骤安装 mono 工具: mono 安装步骤 不过,我在成都下载 mono 时,贼慢,这个需要做好心理准备。
另一种方法,是自己编译 mono 源码安装,请参考官网步骤: mono 官网源码下载
编译驱动库
PDK_INSTALL_DIR 路径如下:
PDK_INSTALL_DIR = ti-processor-sdk-rtos-j721e-evm-08_04_00_06/pdk_jacinto_08_04_00_21
- 获取当前环境,在
ti-processor-sdk-rtos-j721e-evm-08_04_00_06/pdk_jacinto_08_04_00_21/packages 目录下执行:
source ./pdksetupenv.sh
- 编译库,在
PDK_INSTALL_DIR/packages/ti/build 目录下执行:
make -j pdk_libs BOARD=j721e_evm CORE=mcu1_0 OS=linux
第二步会生成各个驱动模块对应的二进制文件,供上层应用链接使用。
编译 SBL
OSPI Flash 作为启动设备
在PDK_INSTALL_DIR/packages/ti/build 目录下执行:
make -j BOARD=j721e_evm CORE=mcu1_0 BUILD_PROFILE=release sbl_ospi_img
SD 卡作为启动设备
在PDK_INSTALL_DIR/packages/ti/build 目录下执行:
make -j BOARD=j721e_evm CORE=mcu1_0 BUILD_PROFILE=release sbl_mmcsd_img
编译 MCUSW
- MCUSW 支持 freeRTOS, 在
/mcusw/build 目录下执行如下命令可以知晓支持的应用:
make -s help BUILD_OS_TYPE=freertos
- 编译 mcusw 的 boot APP,在
/mcusw/build 目录下执行:
make -j can_boot_app_mcu_rtos HLOSBOOT=linux BOOTMODE=mmcsd BOARD=j721e_evm CORE=mcu1_0 BUILD_OS_TYPE=freertos CANFUNC=none
以上就是编译 TDA4VM 的 MCU_R5F0 上的 SBL 与 mcusw 代码的步骤,所有的内容都来自与 SDK 包中的 docs,如有疑问,可沟通交流。
|