工具/软件:
尊敬的专家:
为了降低成本、我们的客户希望将闪存大小减少到 64MB(包括客户应用)、但需要更改软件才能启用闪存。 请帮助我们为您提供指南吗? 谢谢~
我可以看到 tisdk-tiny-image-am62axx-evm.tar.xz 文件系统、但似乎仍然超出了我们的预期、完全 92MB 不包含客户的应用和 AI 模型。

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.
工具/软件:
尊敬的专家:
为了降低成本、我们的客户希望将闪存大小减少到 64MB(包括客户应用)、但需要更改软件才能启用闪存。 请帮助我们为您提供指南吗? 谢谢~
我可以看到 tisdk-tiny-image-am62axx-evm.tar.xz 文件系统、但似乎仍然超出了我们的预期、完全 92MB 不包含客户的应用和 AI 模型。

我们需要确定可以移除哪些元件以减小 rootfs 的大小。 不过、这取决于应用程序栈所需的内容、并视具体情况而定、您需要指导该操作。
为此、 您可以更仔细(深入)检查 rootfs、例如使用此命令...
# du -h -d2 ...or... # du -h -d3
...想知道哪里是最大的分配,并考虑哪些可以删除.
`d、您可以执行的另一操作是查看编译的清单(在 T Ü V eploy-ti/images/am62axx-evm/*manifest`上)、以识别可能被删除的软件包。
可以尝试快速更改 init 管理器 通过将以下内容添加到`conf/local.conf`中、查看您的系统是否仍然正常工作、以及您可以节省多少空间。
# Reduce filesystem size by using sysvinit instead of systemd ARAGO_SYSVINIT = "1"
最后、您可以使用压缩的内核映像进行引导 ,这将有助于剃除像 13MB 大小...
这是我刚才针对 AM64 所做的概念验证、AM62A 的结果将是类似的。
默认情况下、内核大小为 21.2MB……
root@am64xx-evm:~# ls -alh /boot/Ima* lrwxrwxrwx 1 root root 36 Mar 9 12:34 /boot/Image -> Image-6.12.17-ti-00771-gc85877d40f8e -rw-r--r-- 1 root root 21.2M Mar 9 12:34 /boot/Image-6.12.17-ti-00771-gc85877d40f8e
...然而,压缩内核与 gzip 后,大小减少到 8.8MB(请参阅添加的新文件)
root@am64xx-evm:~# ls -alh /boot/Ima* lrwxrwxrwx 1 root root 36 Mar 9 12:34 /boot/Image -> Image-6.12.17-ti-00771-gc85877d40f8e -rw-r--r-- 1 root root 21.2M Mar 9 12:34 /boot/Image-6.12.17-ti-00771-gc85877d40f8e -rw-r--r-- 1 root root 8.8M Mar 9 15:21 /boot/Image-6.12.17-ti-00771-gc85877d40f8e.gz
现在、在引导时、我们需要设置两个 U-Boot 环境变量来指定一个 U-Boot 可用于解压缩目的的空间。 并指定新的内核映像文件名...
=> env set kernel_comp_addr_r 0xb0000000 => env set kernel_comp_size 0x10000000 => env set name_kern Image-6.12.17-ti-00771-gc85877d40f8e.gz => boot
这样、内核将在加载期间自动解压缩。 当然、上述所有步骤也可以自动执行(包括进入 U-Boot config 等)。
执行上述操作的另一种(更简单)方法是从合适的映像加载内核 、方法是将 U-Boot `boot_fit`环境变量设置为`1`。 FIT 映像已经是 rootfs 的一部分、实际上已经以压缩方式包含内核映像。 因此、您可以完全删除`/boot/Image *`文件、立即释放~21MB。
此致、Andreas
我认为它可以节省一些空间、但仍然无法满足要求
您是否尝试过我提供的建议? 您可以节省多少成本? 请提供详细信息。
我希望您可以提供基于 SDK9.2 的微型文件系统、其中可以包含“Openvx、OpenCV、gstream 和 Edge AI 组件“。 这两者都可以在 C7X、编码、以太网和 OpenCV 上运行一些应用、例如推理。 [/报价]我认为这将是一项迭代开发工作 、旨在使其满足您的任何应用需求 、我们无法在 E2E 论坛的上下文中提供这方面的信息。 因此、我之前提供了一些步骤、可以帮助您开始自己这样做。 如果您对具体方面有任何疑问、请告知我。
Andreas
尊敬的 Andreas:
非常感谢。
我尝试了 这个步骤,它帮助了很多。
[报价 userid=“4452" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1510317/am62a7-q1-am62a-filesystem-cut-off-to-64mb/5806516 #5806516“] 可以尝试快速更改 init 管理器 通过将以下代码添加到`conf/local.conf`初始图像 tar 文件大小为 29524240 字节、在此步骤之后、它将变为 21201912 字节。
使用 10.0 SDK 构建 Yocto 后、解压缩的大小会从 116MB 减小到 67MB。
但是、我们需要这样做 v4l2 和 edgeai tiovx 应用或 edgeai gstreamer 以运行该应用。 我在 local.conf 中添加了以下内容: 
然后使用以下命令来重建映像:
~/yocto/tisdk/build$ MACHINE=am62axx-evm bitbake tisdk-tiny-image -f
我得到这个错误:
processor@processor:~/yocto/tisdk/build$ MACHINE=am62axx-evm bitbake tisdk-tiny-image -f WARNING: Duplicate inclusion for /home/processor/yocto/tisdk/sources/meta-arago/meta-arago-distro/conf/distro/include/branding-core.inc in /home/processor/yocto/tisdk/sources/meta-arago/meta-arago-distro/conf/distro/arago.conf WARNING: Duplicate inclusion for /home/processor/yocto/tisdk/sources/meta-arago/meta-arago-distro/conf/distro/include/branding-core.inc in /home/processor/yocto/tisdk/sources/meta-arago/meta-arago-distro/conf/distro/arago.conf NOTE: Started PRServer with DBfile: /home/processor/yocto/tisdk/build/cache/prserv.sqlite3, Address: 127.0.0.1:46271, PID: 2273852 Loading cache: 100% |###############################################################################################################################################################################################################################################| Time: 0:00:04 Loaded 11126 entries from dependency cache. Parsing recipes: 100% |#############################################################################################################################################################################################################################################| Time: 0:00:07 Parsing of 7068 .bb files complete (7067 cached, 1 parsed). 11127 targets, 1753 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies ERROR: Nothing RPROVIDES 'dropbearv4l-utils' (but /home/processor/yocto/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/images/tisdk-tiny-image.bb RDEPENDS on or otherwise requires it) NOTE: Runtime target 'dropbearv4l-utils' is unbuildable, removing... Missing or unbuildable dependency chain was: ['dropbearv4l-utils'] ERROR: Required build target 'tisdk-tiny-image' has no buildable providers. Missing or unbuildable dependency chain was: ['tisdk-tiny-image', 'dropbearv4l-utils'] Summary: There were 2 WARNING messages. Summary: There were 2 ERROR messages, returning a non-zero exit code.
您能指导我们如何删除不需要的软件包,如 python 和添加所需的软件包,如 v4L-utils 吗?
此致、
Adam
Adam、
这是 rootfs 中运行完整 gstreamer 应用所需的最小文件数:
/cfs-file/__key/communityserver-discussions-components-files/791/SDK10.0_5F00_min_2D00_rootfs.xlsx
大约需要 41MB 的空间。
我们需要找到使用 Yocto 生成此错误的方法。 目前、我们已经剥离了所有不需要的东西。
谢谢
Yogesh