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.

[参考译文] CCS/UNIFLASH:需要自动执行IDK-AM437x板的闪存程序

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/596187/ccs-uniflash-need-to-automate-the-flashing-procedure-for-idk-am437x-board

部件号:UNIFLAASH
主题中讨论的其他部件: AM4379FLASHTOOL

工具/软件:Code Composer Studio

您好,

在Code Composer Studio中,我可以 单击创建的AM437X.CCXML的“启动目标配置”,在该程序中,我选择了板作为“IDK-AM437x”,并选择了连接作为“Texas Instrument XDS100v2 USB Debug Probe”。

启动目标配置后,Code Composer Studio将启动调试会话。 我在那里连接了Cortex A9处理器并加载了Gel脚本。 然后运行AM437x EVM初始化脚本。

在运行初始化脚本后,我加载了任何Code Composer Studio项目都不创建的.out (可执行文件)。

因此,委员会的闪存是成功的。

但当我通过UNIFLAASH运行以下命令时。

uniflash.bat -CCXML AM437X.CCXML -program executable.out

我收到以下错误:

***** 德州仪器(TI)通用闪存编程器*****
<开始:16:55:37 GMT+0530 (IST)>
>使用给定的配置配置Flash编程器...
> Flash Manager已配置为以下部件:AM4379
>正在连接到闪存操作的目标...
SEVERE:M3_WakeupSS_1:连接到目标时出错:(错误-1266 @ 0x0) Devic
E保持在复位状态。 使设备退出重置,然后重试此操作。 (EMUL
6.0 软件包14.5)
严重:发生仿真故障
严重:连接到目标时出错:发生仿真故障
>连接到目标时出错。
<end:16:55:40 GMT+0530 (IST)>
<总时间:3.01s>
请帮助我自动执行AM4379板上的闪存。
此致,
Dhanya
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Dhanya

    CCS实际上不支持AM437x器件上的闪存编程。 它仅支持带有片上闪存的编程设备。 如果从CCS加载,则只会加载映射到RAM的程序部分,然后加载符号。 本文介绍如何将UniFlash与Sitara设备配合使用:

    processors.wiki.ti.com/.../Sitara_Uniflash_Quick_Start_Guide

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

    我尝试使用以太网电缆刷新IDK-AM4379板。

    我使用了中提到的以下过程

    processors.wiki.ti.com/.../Sitara_Uniflash_Quick_Start_Guide


    使用以太网快擦写主板

    要使用主机PC和目标板之间的以太网接口对板进行编程,将在两者之间建立专用网络。 主机PC在一个NIC (网络接口卡)上设置了静态IP地址,并连接到以太网交换机或直接连接到目标板。 不应使用分配IP地址的路由器,因为主机PC需要提供此地址才能启动目标板。

    做了所有事情后。 我收到以下错误,

    “状态”列中出现FlashUnknownError,进度为0 %。

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

    Dhanya

    能否提供IDK的控制台日志? 这将使我们更深入地了解问题,以便我们纠正问题。

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

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

    请向我提供有关这方面的一些信息。 如果您需要更多信息,请告诉我。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Dhanya

    我希望从目标获得控制台日志。 这可以通过Windows上的Teraterm或Linux上的Minicom来捕获。 它将提供有关设备如何尝试引导以及可能出现的问题的更多信息。

    uniflash中也有一些日志,这将非常有用。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    实际上,我在刷新板时跳过了很多步骤。

    现在,我将介绍本文档,以便生成刷新TI Sitara板所需的文件。

    processors.wiki.ti.com/.../Sitara_Uniflash_Flash_Programming_with_U-Boot

    使用UniFlash准备要传输到主机PC的文件

    为闪存编程过程提供以下文件。 这些文件需要放置在c:\AM335x_Flashtool\images目录(默认情况下)或配置Uniflash以查找它们的任何位置。

    1. flash-image.out–要闪存的串联目标文件
    2. debrick.scr–将目标文件刻录到闪存的自定义脚本
    3. SPL (例如u-boot-spl-restore.bin)-加载U-Boot的闪存恢复SPL
    4. U-Boot (例如u-boot-restore.img)–加载debrick.scr的闪存恢复U-Boot

    我根据文档创建了前两个文件。

    我无法生成第三个文件u-boot-spl-restore.bin。 本文档适用于AM335x/AM437x。但只有AM335x补丁 链接可用。

    它显示 “下载适用于您的平台的修补程序集”

    请告诉我从哪里可以获得AM437x平台的uboot补丁集。

    此致,

    Dhanya

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

    Dhanya

    您是否介意帮助我了解您的高级要求? 您打算做什么? 该主板具有用于启动和运行Linux的SD卡,也可用于刷新Quad SPI闪存。 此外,默认情况下,此主板不从以太网启动,需要进行修改才能启动。 您是否进行了此修改?

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

    更高级别的要求-使用Uniflash在TI Sitara AM437x板上刷新vxWork图像。

    意图-自动执行整个闪存过程

    我们遵循的程序:

    1)主板中有一个SDCARD,我们在其中存储uboot.img

    2)板通过以太网连接到PC,并在板和测试PC之间建立tftpd连接。

    3)在tftpd目录路径下,我们向闪存提供二进制文件,即VxWorks映像。

    4)手动按下主板上的复位,它将启动主板,然后依次执行MLO和SDcard中提供的uboot.img。

    5)引导过程结束后,它将从tftpd客户端获取vxWork映像(二进制文件)并运行它。


    我们正在控制台日志中检查电路板的状态(Tera术语)。

    请帮助我了解如何使用Uniflash实现与上述相同的操作。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Dhanya

    感谢您的解释。 不幸的是,Uniflash设计为非常特定于用于引导和刷新Linux映像的特定流。 由于您的需求不同,状态窗口将不会完全反映您尝试实现的流程。 但是,我认为您可以让它做您想要做的事情。

    您能否共享您的控制台(tera术语)日志?

    您是否可以检查Uniflash中包含的opendhcp和opentftp日志,以查看它们是否共享有趣的内容?

    很可能是您正在成功刷新主板,但报告的状态不正确,因为您的流与Uniflash设计支持的内容之间存在差异。