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.

[参考译文] AM6442:创建 Yocto rootfs

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1506513/am6442-create-yocto-rootfs

器件型号:AM6442
Thread 中讨论的其他器件:SK-AM64B

工具/软件:

 尊敬的先生:

   

我已安装 ti-processor-sdk-linux-am64xx-evm-10_01_10_04-Linux-x86-Install.bin 并成功运行 make all。 我使用脚本 bin/create-sdcard.sh 创建 SD 卡映像并使用 SDK 的默认编译文件进行写入。 现在、我想使用 ​​自定义 boot/rootfs tar 包或目录 ​​、但 SDK 似乎不包括基于 Yocto 的 rootfs 源代码。




运行后 make all,我没有找到任何 rootfs 构建过程或生成的映像。 如何解决此问题?

root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04# ls
bin            example-applications  k3r5-devkit  linux-devkit    lmbench.tgz  makerules  rt-tests     Rules.make  stress-ng
board-support  filesystem            licenses     lmbench-3.0-a9  Makefile     manifest   rt-test.tar  setup.sh
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04# cd bin
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04/bin# ls
add-to-group.sh  create-sdcard.sh  setup-host-check.sh  setup-package-install.sh  setup-tftp.sh       sysfw_trace_parser.py
common.sh        Ethernet_flash    setup-minicom.sh     setup-targetfs-nfs.sh     setup-uboot-env.sh  sysfw_trace_rules.json
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04/bin# cd ..
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04# ls
bin            example-applications  k3r5-devkit  linux-devkit    lmbench.tgz  makerules  rt-tests     Rules.make  stress-ng
board-support  filesystem            licenses     lmbench-3.0-a9  Makefile     manifest   rt-test.tar  setup.sh
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04# 
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04# 
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04# 
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04# 
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04# cd filesystem/
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04/filesystem# ls
am64xx-evm
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04/filesystem# cd am64xx-evm/
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04/filesystem/am64xx-evm# ls
tisdk-base-image-rt-am64xx-evm.rootfs.tar.xz  tisdk-default-image-rt-am64xx-evm.rootfs.tar.xz  tisdk-thinlinux-image-rt-am64xx-evm.rootfs.tar.xz
root@master:/opt/ti-processor-sdk-linux-rt-am64xx-evm-10.01.10.04/filesystem/am64xx-evm# 

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

    嗨、Pingan、

    Unknown 说:
    我已安装 ti-processor-sdk-linux-am64xx-evm-10_01_10_04-Linux-x86-Install.bin 并成功运行
     make al

    如果您启动新工程、您应该使用我们目前最新的 SDK (即 v11.0)、从最新的 Linux 内核、U-Boot、驱动程序、固件、演示 以此类推。 请参阅 https://www.ti.com/tool/download/PROCESSOR-SDK-LINUX-RT AM64X-AM64X

    Unknown 说:
    现在、我想使用 ​​自定义 boot/rootfs tar 包或目录 ​​、但 SDK 似乎不包括基于 Yocto 的 rootfs 源代码

    Yocto 环境不是 SDK 安装程序的一部分、而是直接从通过`git clone`从互联网提取的源树中进行设置。 此文档包含所有详细信息: https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM64X/11_00_09_04/exports/docs/linux/Overview_Building_the_SDK.html

    此致、Andreas

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

    我使用"使用自定义映像创建 SD 卡"、并选择"输入自定义引导和 rootfs 文件路径"。 我输入了引导分区路径、但我不知道如何选择根路径。 我选择了选项:"提供一个包含要使用的内核映像和设备树文件的目录"、因为我想使用自己的内核映像和设备树文件。 但是、应该如何配置此路径? 我是否需要将 SDK 中所有编译的器件树映像和内核映像放入单个文件夹中? 此外、完成此选项后、系统会要求我再次选择 rootfs 路径。 我是否可以使用系统内置文件系统中的默认 rootfs 文件?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我选择了以下选项:"提供一个包含要使用的内核映像和设备树文件的目录"、因为我想使用自己的内核映像和设备树文件。 但是、应该如何配置此路径? 我是否需要将 SDK 中所有编译的器件树映像和内核映像放入单个文件夹中? 此外、完成此选项后、系统会要求我再次选择 rootfs 路径。

    我不太熟悉  脚本在应用此类定制时的确切操作、但您可以只查看其源代码、就会看到它会根据所选的选项尝试从内核、dtb 和 rootfs 提取文件的确切位置。

    另一种(我认为更直接的方式)是使用 SDK 提供的所有功能对初始 SD 卡映像进行编程;然后加载此映像(通过 SD 读卡器)并替换您要替换的文件。 请注意、如果替换内核、通常还需要更新与其同步的内核模块以保持兼容性(否则不会加载任何内核模块)。

    我仍然认为最好使用 Yocto 直接生成新的即用型 WIC 映像。 这还具有这样的优点:您的所有更改都可以立即以可重复和有组织的方式随时重新构建和重新部署(而不是依赖于某些脚本和手动命令选择等)。

    我是否可以使用系统内置文件系统中的默认 rootfs 文件?

    是的、这应该不是问题。

    此致、Andreas

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

    它在现成的 SK-AM64B 板上运行、对吗?

    内核从何而来?

    我们当前的 SDK (v11.x)生产内核可在以下位置找到: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/log/?h=ti-linux-6.12.y

    对于我们之前的 SDK (v10.x)、生产内核树是 https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/log/?h=ti-linux-6.6.y 以及 https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/log/?h=ti-rt-linux-6.6.y (适用于 Linux-RT)。

    请使用其中一个 TI 内核树(以及相关的 defconfig 和 prune 步骤、请参阅 SDK 文档)来确认操作是否正确并作为任何定制选项的起点。

    此致、Andreas