This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[FAQ] [参考译文] [常见问题解答]如何在 MCU+ SDK 中为 Linux SBL 生成 Linux Appimage

Guru**** 536590 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1235722/faq-how-to-generate-linux-appimage-for-linux-sbls-in-mcu-sdk

涵盖的器件:AM64x、AM62x、AM62A

MCU+ SDK 中的 Linux SBL 支持从 PSDK 引导 Linux。 这些 Linux SBL 需要 Linux Appimage 来引导 Linux。 请注意、该 Linux Appimage 是使用 PSDK 中的 ATF、OPTEE 和 A53 U-Boot SPL 二进制文件生成的。

此常见问题解答介绍了如何获取这些二进制文件、所需的其他工具以及生成 Linux Appimage 的步骤。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    生成 Linux 应用程序映像的步骤如下:

    所需的工具安装→获取未签名的二进制文件→编辑配置文件→生成 Linux 应用映像

    所需的工具安装

    若要生成 Linux Appimage、我们需要以下工具:1) PSDK 和2) GCC Aarch64编译器

    1) PSDK

    PSDK 可通过器件的 PSDK 页面进行安装。 建议使用 PSDK 版本>= 8.6、以供以后了解。

    请注意、PSDK 只能安装在 Linux OS 中。 对于 Windows 用户、解决方案是安装并运行 WSL 或 Linux 虚拟机。 之后、可以在这些环境中安装 PSDK、然后可以将所需的组件二进制文件复制到 Windows。

    2) GCC Aarch64 编译器

    可以按照 MCU+ SDK 设置页面中的以下指南安装GCC Aarch64编译器:GCC Aarch64编译器

    请注意、编译器应该安装在用于 Linux 的${home}/ti 或用于 Windows 的 C:\ti 中。 更重要的是、提取目录中的编译器文件夹结构应该像这样

    gcc-arm-9.2-2019.12-mingw-w64-i686-aarch64-none-elf
    ├── .build_flags
    ├── aarch64-none-elf
    ├── bin
    ├── include
    ├── lib
    ├── libexec
    └── share

    获取无符号二进制文件

    MCU+ SDK 需要构建 Linux Appimage 所需的三个组件(ATF、OPTEE 和 A53 SPL)的无符号二进制文件。  现在、之前使用的 PSDK 还 附带 A53 U-Boot SPL 的预构建无符号二进制文件。 从8.6版开始、PSDK 还附带 ATF 和 OPTEE 的无符号二进制文件。

    组件与 Linux Appimage 所需的相应无符号二进制名称之间的映射是:

    组件 无符号二进制名称
    ATF bl31.bin.unsigned
    OPTEE bl32.bin.unsigned
    A53 U-Boot SPL u-boot-spl.bin*

    注意:A53 SPL 二进制名称中的星号计算为器件特定的后缀。 与 AM64x 类似、A53 SPL 预编译映像名称为 u-boot-spl.bin-am64xx-evm

    这些预生成的二进制文件可在以下路径中找到: /board-support/prebuilt-images

    编辑 Config 文件

    现在、无符号二进制 文件已经准备就绪、可以根据需要编辑配置文件、以更新包含 ATF、OPTEE 和 A53 SPL 无符号二进制文件的路径和名称的变量。 配置文件中的所有其他内容都保持不变。

    MCU+ SDK 中的 Linux Appimage 生成工具位于下 /tools/boot/linuxAppimageGen. 我们将在同一目录中工作、以生成 Linux Appimage。

    配置文件(config.mak)的位置因器件而异、如下所示:

    器件 配置文件(config.mak)
    供电 /tools/boot/linuxAppimageGen
    AM62x、AM62AX /tools/boot/linuxAppimageGen/board

    在此 config.mak 文件中、将路径更新到先前提到的 ATF、OPTEE 和 A53 SPL 的无符号二进制文件所在的位置。 此外、如果需要、还应更新配置文件中的二进制文件名。

    生成 Linux 应用程序映像

    现在一切都准备就绪了、是时候运行最后一个命令来生成 Linux Appimage 了。

    应从运行以下命令 /tools/boot/linuxAppimageGen 目录中。

    器件 Command for Windows 的目录 Command for Linux 的目录
    供电 gmake -s 全部 全部生成
    AM62X、AM62A gmake -s Board= 全部 make -s board= 全部

    gmake 命令随 CCS 安装一同提供、而 Linux 操作系统附带 make 命令。 请注意、上述命令假定系统的路径环境变量中存在编译工具(gmake 或 make)的路径。

    上述命令将生成 Linux Appimage。 如果 MCU+ SDK 中的 DEVICE_TYPE 设置为 GP、则 MCU+ SDK 将生成由 linux.appimage 和 linux.appimage.hs_fs 标识的 GP 和 HS-FS Linux Appimage但是、如果对 HS-SE 电路板将 device_type 设置为 HS、则 MCU+ SDK 将生成由名为 linux.appimage.hs 标识的 HS-SE Linux Appimage。

    此致、

    Prashant