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.

[参考译文] PROCESSOR-SDK-AM437X:SDK 版本07至08的内核启动时间增加得相当极端

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1189219/processor-sdk-am437x-fairly-extreme-kernel-boot-time-increase-from-sdk-version-07-to-08

器件型号:PROCESSOR-SDK-AM437X

这是我第二次为同一个未回答的问题打开新主题。   是否可以停止关闭未解析的线程?  如果我们重新打开组织线程、我会更喜欢。  


有人答应我会回答这个问题、但从未回答过、但现在这个问题已经被锁定了。   这似乎是错误的。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1137927/processor-sdk-am437x-fairly-extreme-kernel-boot-time-increase-from-sdk-version-07-to-08

请重新打开并删除此主题、或在此处回答。   粘贴帖子的全部内容。

原员额如下:

您好:

因此、我发现这个闭合线程没有任何响应:

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1098879/am4376-linux-boottime-increased

这一个看起来也是相关的、但实际上并没有解决这个问题、因为当时内核5.10不受支持。   但是、它现在是 SDK 08的版本。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1051951/linux-am335x-kernel-boot-time-optimization

我注意到我的定制板和配方的启动过程中有些奇怪的缓慢、并深入研究了一段时间、但后来决定仅回到 EVM 和预构建的 TI 图像。

因此、本帖子的其余部分纯粹是关于 TI 发布的不带任何修改的香草 SDK。

对于 tisdk-08-default-image-am437x-evm.wic.xz 内核、在大约2.2秒后引导并启动 systemd。  已通过在/boot/uEnv.txt.中打开 initcall_debug 的 dmesg 输出确定

tisdk-08的一个关键问题是 customize_machine:

root@AM437X-EVM:~# dmesg | grep custom
[0.091801]   调用 customer_machine_0x0/0x30 @ 1
[0.925154]   initcall custom_machine_0x0/0x30在810546 usecs 后返回0

另一个主要原因是:
root@AM437X-EVM:~# dmesg | grep sysc_init
[0.979597]   调用 sysc_init+0x0/0x2C @ 1.
[1.450701]   460029 usecs 后 initcall sysc_init+0x0/0x2C 返回0

对于 tisdk-07-default-image-am437x-evm.wic.xz 内核(v5.4),将在大约1.1秒后引导并启动 systemd。  已通过在/boot/uEnv.txt.中打开 initcall_debug 的 dmesg 输出确定

customize_machine:

root@AM437X-EVM:~# dmesg | grep custom
[0.105016]   调用 customer_machine+0x0/0x30 @ 1
[0.123832]   initcall custom_machine_0x0/0x30在19531 usecs 后返回0

root@AM437X-EVM:~# dmesg | grep sysc_init
[0.169355]   调用 sysc_init+0x0/0x2C @ 1.
[0.227342]   initcall sysc_init+0x0/0x2C 在56601 usecs 后返回0

因此、基本上所有内核启动时间的增加都可以归因于这两项、这与 SDK 08有关。

我不认为这是读者的练习、因为我不希望+1版本的内核启动时间延长2倍。

我很确定我在这里介绍的所有内容都可以在您的结尾轻松重现    

我在定制板和配方上看到的所有内容都是基于基本映像而不是默认映像。   因此、假设您可以告诉我如何为 EVM 修复它、它应该可以轻松转换为我的内容。

谢谢

霍华德

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

    您好 Howard、

    一位客户最近报告了 customze_machine()上类似的引导时间问题,并找到了解决方案。 希望以下 e2e 线程对您有所帮助:

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1188309/am3351-linux-kernel-boot-time

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

    您好!

    我仔细阅读了其中的一些内容、但如果 TI 实际上可以提供一组明确的应用步骤、这似乎是合适的。   正如我在前面的一个线程中提到的、我认为这不是读者需要做的一项练习、因为 SDK 08中已经介绍了这一点。

    谢谢。

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

    您好 Howard、

    [引用 userid="495786" URL"~/support/processors-group/processors/f/processors-forum/1189219/processor-sdk-am437x-fairly-extreme-kernel-boot-time-increase-from-sdk-version-07-to-08/4492748 #44992748"]假设这是 SDK 08中引入的。

    我知道您看到的是 SDK 08内核的问题、但该问题正是在 SDK 08中使用的社区内核中引入的。 TI 将 TI 器件权利添加到社区内核中、但并不总是修复社区内核中的问题。

    由于今年没有计划为 AM437x 发布另一个基于8.x 的 SDK、因此我们不打算解决 SDK 08的此问题。 AM437x 的下一个 SDK 将基于内核 v6.1。