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.

[参考译文] SK-AM62A-LP:在将程序(.out)加载到 C7x 或 R5F 之后、操作停止。

Guru**** 2460850 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1468185/sk-am62a-lp-after-loading-a-program-out-to-c7x-or-r5f-operation-stops

器件型号:SK-AM62A-LP

工具与软件:

尊敬的专家:

Linux SDK:10.00
MCU+ SDK:10.01

按照MCU+ SDK 指南中"加载和运行示例二进制文件"中的步骤、使用"SOCInitialization using SPL"显示 Linux 启动屏幕(Arago Project)、从 CCS 加载.out (Hello project)无法正常工作。
您能否指出可能的原因?

如果我们在 u-boot 阶段启动 Remoteproc、则示例代码运行不会出现任何问题。 这适用于 C7x、但也适用于 R5F。

此致、
还可以

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

    您好!

    感谢您的提问。

    您能否发送您看到的错误日志?

    此致、

    Tushar

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

    尊敬的  Tushar:

    感谢您的答复。

    从 CCS 连接到 C7x 时显示以下错误代码。
    我尝试从.ccxml 文件逐渐将 TCLK 降低到100kHz、但结果是相同的。

    C7XSS0_0:连接至目标时出错:(错误-2081 -(0:0:0))器件功能时钟似乎已关闭。 对电路板执行下电上电。 如果错误仍然存在、请确认配置和/或尝试更可靠的 JTAG 设置(例如、较低 TCLK)。 (仿真包12.7.0.00130)

    操作步骤如下。

    1. 连接 JTAG 电缆→Target Configurations→Launch
    2. 连接 UART 电缆→启动 TeraTerm (115200)
    3. SD 卡引导开关→连接电源线
    4. 选中 boot ( 显示 Arago 项目)→Connect from CCS to C7x

    如果成功、将显示以下内容。

    操作步骤如下。

    1. 在 u-boot 上连接电源线→Stop
    2. rproc init→rproc start
    3. 从 CCS 连接到 C7x→Load .out

    此致、
    还可以

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

    尊敬的 O.H:

    您尚未正确初始化内核、因此无法连接的错误代码状态。

    您能否确认、在 Linux 完全引导后(不要在 u-boot 处停止)、您是否能够连接内核?

    您是否能够连接其他内核?

    此致、

    Tushar

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

    你(们)好  

    尊敬的  Tushar:

    [报价 userid="16414" url="~/support/processors-group/processors/f/processors-forum/1468185/sk-am62a-lp-after-loading-a-program-out-to-c7x-or-r5f-operation-stops/5637166 #5637166"]

    您能否确认、在 Linux 完全引导后(不要在 u-boot 处停止)、您是否能够连接内核?

    您是否能够连接其他内核?

    [报价]

    [报价 userid="402494" url="~/support/processors-group/processors/f/processors-forum/1468185/sk-am62a-lp-after-loading-a-program-out-to-c7x-or-r5f-operation-stops/5637087 #5637087"]

    操作步骤如下。

    1. 连接 JTAG 电缆→Target Configurations→Launch
    2. 连接 UART 电缆→启动 TeraTerm (115200)
    3. SD 卡引导开关→连接电源线
    4. 选中 boot ( 显示 Arago 项目)→Connect from CCS to C7x
    [报价]

    已确认。 包括 A53和 R5F 在内的所有内核都具有相同的错误。

    通过了.cXML 文件的"测试连接"

    [Start: Texas Instruments XDS110 USB Debug Probe]
    
    Execute the command:
    
    %ccs_base%/common/uscif/dbgjtag -f %boarddatafile% -rv -o -S integrity
    
    [Result]
    
    
    -----[Print the board config pathname(s)]------------------------------------
    
    C:\Users\12582\AppData\Local\TEXASI~1\CCS\
        ccs1271\0\0\BrdDat\testBoard.dat
    
    -----[Print the reset-command software log-file]-----------------------------
    
    This utility has selected a 100/110/510 class product.
    This utility will load the adapter 'jioxds110.dll'.
    The library build date was 'Apr 19 2024'.
    The library build time was '14:04:01'.
    The library package version is '12.7.0.00130'.
    The library component version is '35.35.0.0'.
    The controller does not use a programmable FPGA.
    The controller has a version number of '5' (0x00000005).
    The controller has an insertion length of '0' (0x00000000).
    This utility will attempt to reset the controller.
    This utility has successfully reset the controller.
    
    -----[Print the reset-command hardware log-file]-----------------------------
    
    The scan-path will be reset by toggling the JTAG TRST signal.
    The controller is the XDS110 with USB interface.
    The link from controller to target is direct (without cable).
    The software is configured for XDS110 features.
    The controller cannot monitor the value on the EMU[0] pin.
    The controller cannot monitor the value on the EMU[1] pin.
    The controller cannot control the timing on output pins.
    The controller cannot control the timing on input pins.
    The scan-path link-delay has been set to exactly '0' (0x0000).
    
    -----[Perform the Integrity scan-test on the JTAG IR]------------------------
    
    This test will use blocks of 64 32-bit words.
    This test will be applied just once.
    
    Do a test using 0xFFFFFFFF.
    Scan tests: 1, skipped: 0, failed: 0
    Do a test using 0x00000000.
    Scan tests: 2, skipped: 0, failed: 0
    Do a test using 0xFE03E0E2.
    Scan tests: 3, skipped: 0, failed: 0
    Do a test using 0x01FC1F1D.
    Scan tests: 4, skipped: 0, failed: 0
    Do a test using 0x5533CCAA.
    Scan tests: 5, skipped: 0, failed: 0
    Do a test using 0xAACC3355.
    Scan tests: 6, skipped: 0, failed: 0
    All of the values were scanned correctly.
    
    The JTAG IR Integrity scan-test has succeeded.
    
    -----[Perform the Integrity scan-test on the JTAG DR]------------------------
    
    This test will use blocks of 64 32-bit words.
    This test will be applied just once.
    
    Do a test using 0xFFFFFFFF.
    Scan tests: 1, skipped: 0, failed: 0
    Do a test using 0x00000000.
    Scan tests: 2, skipped: 0, failed: 0
    Do a test using 0xFE03E0E2.
    Scan tests: 3, skipped: 0, failed: 0
    Do a test using 0x01FC1F1D.
    Scan tests: 4, skipped: 0, failed: 0
    Do a test using 0x5533CCAA.
    Scan tests: 5, skipped: 0, failed: 0
    Do a test using 0xAACC3355.
    Scan tests: 6, skipped: 0, failed: 0
    All of the values were scanned correctly.
    
    The JTAG DR Integrity scan-test has succeeded.
    
    [End: Texas Instruments XDS110 USB Debug Probe]
    

    此致、
    还可以

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

    尊敬的 O.H:

    这表示您的 SoC 未正确初始化。 请使用 SBL 二进制文件初始化 SOC 以连接内核。

    请按照提及的步骤操作  很好

    此致、

    Tushar  

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

    尊敬的  Tushar:

    [报价 userid="16414" url="~/support/processors-group/processors/f/processors-forum/1468185/sk-am62a-lp-after-loading-a-program-out-to-c7x-or-r5f-operation-stops/5637222 #5637222"]

    这表示您的 SoC 未正确初始化。 请使用 SBL 二进制文件初始化 SOC 以连接内核。

    请按照提及的步骤操作  很好

    [报价]

    这已经完成。
    在 QSPI NAND 引导后、可以直接从 CCS 加载 CONNECTION_OUT。
    SD 卡引导(Linux 引导)后、无法从 CCS 连接。

    此致、
    还可以

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

    您好、确定

    感谢您的确认。  

    您能否告诉您在连接到任何内核之前是否能够查看完整的 Linux 启动日志?

    您是否能够登录到 root 用户?

    此致、

    Tushar

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

    尊敬的  Tushar:

    感谢您的答复。

    您能告诉我在连接到任何内核之前您是否能够看到完整的 Linux 启动日志?

    您能登录到 root 用户吗?

    是的、我可以。

    此致、

    还可以

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

    尊敬的 O.H:

    请在从 Linux 控制台运行以下命令后共享该命令的输出

    head /sys/class/remoteproc/remoteproc*/name
    head /sys/class/remoteproc/remoteproc*/state

    此致、

    Tushar

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

    尊敬的  Tushar:

    请在从 Linux 控制台运行以下命令后分享该命令的输出

    root@am62axx-evm:/opt/edgeai-gst-apps# head /sys/class/remoteproc/remoteproc*/name
    ==> /sys/class/remoteproc/remoteproc0/name <==
    7e000000.dsp
    
    ==> /sys/class/remoteproc/remoteproc1/name <==
    79000000.r5f
    
    ==> /sys/class/remoteproc/remoteproc2/name <==
    78000000.r5f
    
    
    
    root@am62axx-evm:/opt/edgeai-gst-apps# head /sys/class/remoteproc/remoteproc*/state
    ==> /sys/class/remoteproc/remoteproc0/state <==
    offline
    
    ==> /sys/class/remoteproc/remoteproc1/state <==
    offline
    
    ==> /sys/class/remoteproc/remoteproc2/state <==
    attached

    输出。

    root@am62axx-evm:/opt/edgeai-gst-apps# echo start > /sys/class/remoteproc/remoteproc0/state
    [  131.818524] remoteproc remoteproc0: powering up 7e000000.dsp
    [  131.834845] remoteproc remoteproc0: Direct firmware load for am62a-c71_0-fw failed with error -2
    [  131.847037] remoteproc remoteproc0: request_firmware failed: -2
    [  131.854327] remoteproc remoteproc0: Boot failed: -2
    -sh: echo: write error: No such file or directory
    
    root@am62axx-evm:/opt/edgeai-gst-apps# echo start > /sys/class/remoteproc/remoteproc1/state
    [  136.993788] remoteproc remoteproc1: powering up 79000000.r5f
    [  137.009799] remoteproc remoteproc1: loading /lib/firmware/am62a-mcu-r5f0_0-fw failed with error -22
    [  137.019935] remoteproc remoteproc1: Direct firmware load for am62a-mcu-r5f0_0-fw failed with error -22
    [  137.030325] remoteproc remoteproc1: request_firmware failed: -22
    [  137.037647] remoteproc remoteproc1: Boot failed: -22
    -sh: echo: write error: Invalid argument
    
    root@am62axx-evm:/opt/edgeai-gst-apps# echo start > /sys/class/remoteproc/remoteproc2/state
    
    root@am62axx-evm:/opt/edgeai-gst-apps# head /sys/class/remoteproc/remoteproc*/state
    ==> /sys/class/remoteproc/remoteproc0/state <==
    offline
    
    ==> /sys/class/remoteproc/remoteproc1/state <==
    offline
    
    ==> /sys/class/remoteproc/remoteproc2/state <==
    attached

    此致、
    还可以

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

    尊敬的 O.H:

    根据上面的日志、可以清楚地看出内核未初始化且处于离线状态。 在内核处于运行状态之前、您将无法与内核连接。

    您是否更改了 remoteproc 加载的默认映像中的任何内容?

    此致、

    Tushar

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

    尊敬的  Tushar:

    [报价 userid="16414" url="~/support/processors-group/processors/f/processors-forum/1468185/sk-am62a-lp-after-loading-a-program-out-to-c7x-or-r5f-operation-stops/5637428 #5637428"]

    根据上面的日志、可以清楚地看出内核未初始化且处于离线状态。 在内核处于运行状态之前、您将无法与内核连接。

    您是否更改了 remoteproc 加载的默认映像中的任何内容?

    [报价]

    我没有进行任何更改。 假设我将运行 gmake 时使用的"imports.mak"中的 CCS 路径更改为"ccs1271"。
    但我将再次尝试"闪存 SOC 初始化二进制文件"。

    我确认一点。 以下哪一项(1或2)是正确的?

    要从 CCS 加载.out、
    1: 上电时执行闪存 SOC 初始化二进制文件(QSPI NAND 引导)。 然后、保持上电、更改引导开关并 使用 SPL (Linux Boot)执行 SOC 初始化。
    2:上电时执行闪存 SOC 初始化二进制文件(QSPI NAND 引导)。 或使用 SPL (Linux 引导)执行 SOC 初始化。

    此致、
    还可以

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

    尊敬的 O.H:  

    如果您使用 OSPI NAND 引导(SBL 流)、则首先将 EVM 保持在 UART 引导中、刷写 SBL 二进制文件。 关闭 EVM 的电源、将引导模式切换到 OSPI NAND、然后再次上电。

    如果使用 SPL Flow (Linux)创建包含 Linux WIC 映像的 SD 卡、请使 EVM 保持 SD 卡引导模式。 将 SD 卡插入 EVM 并再次上电。

    此致、

    Tushar  

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

    尊敬的  Tushar:

    很抱歉这么晚才回复。 这需要一段时间才能确认。

    我确认了以下两点。
    SPL (Linux 引导)似乎有问题。 你怎么看?

    1:使用 QSPI NAND 引导→成功写入.out

    我运行了"Flash SOC 初始化二进制文件"、并使用 UART 引导写入 QSPI NAND。 之后、我更改为 QSPI 引导并启动、能够从 CCS 加载.out。

    日志如下。
    e2e.ti.com/.../8015.QSPI_5F00_BOOT.txt

    2:使用 SPL (Linux 引导)写入.out→成功但无法正常工作。

    我准备了一台装有 Linux 操作系统的计算机、并将 v10.01 SDK 写入 SD 卡。 我更改为 SD 卡引导、当显示"Arago Project"时、我能够从 CCS 加载.out。 但是、该程序无法正常工作。

    日志如下。
    e2e.ti.com/.../LINUX_5F00_BOOT.txt

    此致、
    还可以

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

    您好、确定

    感谢以上确认。

    我了解到、您现在可以连接该程序并将其加载到内核上、但该程序无法按预期运行。

    您能说明一下您尝试加载的示例吗? 您正在使用哪个内核?

    此致、

    Tushar

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

    尊敬的  Tushar:

    您能告诉我们您尝试加载的是哪一个示例吗? 您正在使用哪个内核?[/QUOT]

    "sciclient_get_version_am62ax-sk_c75ss0-0_freertos_ti-c7000"失败。

    "sciclient_get_version_am62ax-sk_mcu-r5fss0-0_nortos_ti-arm-clang"成功。

    我们 要使用 C7x。

    此致、
    还可以

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

    您好、确定

    请留出一些时间来重现问题并恢复。

    此致、

    Tushar

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

    您好、确定

    我已经在内部进行了讨论、并了解了使用 Linux 引导 EVM 时不会通过 CCS 加载 c7x 示例的信息。

    请通过 SBL 二进制文件启动 EVM、以通过 CCS 加载示例。

    此致、

    Tushar

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

    尊敬的  Tushar:

    感谢您的支持。 我明白了。

    我希望这个问题会在下一次 SDK 更新中得到解决。

    此致、
    还可以