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-AM64X:TMDS64EVM 上的 R5F 固件加载

Guru**** 2487425 points
Other Parts Discussed in Thread: TMDS64EVM

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1442803/processor-sdk-am64x-r5f-firmware-loading-on-tmds64evm

器件型号:PROCESSOR-SDK-AM64X
主题中讨论的其他器件:TMDS64EVM

工具与软件:

尊敬的 TI 团队:

我尝试通过添加资源表、在 TMDS64EVM 上使用 Linux 加载 R5F 固件。 不过、我会遇到问题。

随附的是问题描述。 您能帮助我确定该问题的根本原因吗?

期待您的帮助。

硬件:TMDS64EVM
软件:mcu_plus_sdk_am64x_10_00_00_20

问题:-

root@am64xx-evm:echo start >/sys/class/remoteproc/remoteproc1/state

[9811.677903] remoteproc remoteproc1:上电78000000.r5f
[ 9811.678795] remoteproc remoteproc1:启动固件映像 am64-main-r5f0_0-fw、大小为407716
-sh: echo:写错误:参数无效
[ 9811.682140] remoteproc remoteproc1:错误的 phdr da 0x70080000 mem 0xef00
[ 9811.682157] remoteproc remoteproc1:无法加载程序段:-22.
[ 9811.688089] remoteproc remoteproc1: boot failed:-22.

此致

闪耀 K 乔治

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

    您好!

    只是个猜测、但检查链接器脚本中的段是否与 devicetree 分割相匹配。 您的代码链接地址为70080000。 需要将该区域分配给 Remoteproc。  

    此致、

    Dominic

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

    您好、闪亮、

    基于 Dominic 的响应:如果您希望 Linux Remoteproc 驱动程序在初始化 R5F 内核的同时将数据加载到 SRAM 中、则需要确保在 Linux devicetree 文件中定义 R5F 的 SRAM 存储器区域、并将该存储器区域传递到 R5F devicetree 节点。 确实做到了吗?

    请参阅 AM64x Academy 的多核模块。 其中包含很多关于让 Linux 和 R5F 内核协同工作的重要信息。 例如、本线程顶部的"原始线程"中链接的常见问题已被更详细的"远程内核上的应用开发"一节所取代。
    https://dev.ti.com/tirex/explore/node?node=A__AfSHr0vWbFdGCnmoPeMXzg__AM64-ACADEMY__WI1KRXP__LATEST

    我建议阅读整个章节。 不过、本页上提供了定义 SRAM 存储器区域的具体示例:
    https://dev.ti.com/tirex/explore/node?node=A__AXdlNVv-3hxEuToJ8O8ivg__AM64-ACADEMY__WI1KRXP__LATEST

    此致、

    Nick