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.

[参考译文] RTOS/AM3352:从 SD 卡引导不起作用

Guru**** 2551570 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/606440/rtos-am3352-boot-from-sd-card-is-not-working

器件型号:AM3352

工具/软件:TI-RTOS

你(们)好

  我已安装 PDK1_0_6。

  我通过参考以下 wiki 体验 PDK: http://processors.wiki.ti.com/index.php/Rebuilding_The_PDK 。

  项目已创建、编译正常。

  但我一直在从 SD 卡引导。

  我将多次查看此 wiki: http://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_BOOT_AM335x/AM437x 

  我有几个问题:

   

  问题1. 关于 MLO 创建、  

     wiki 告诉我们执行以下步骤:  

         具有 ti 标头( _ti.bin)应重命名为"MLO"。 引导加载程序映像位于  

        结果:我已测试将 xxx_ti.bin 重命名为 MLO,重命名后的 MLO 可以引导。

     但是、此 wiki 还告诉我们:         

        tiimage.exe 0x402F0400 MMCSD boot.bin MLO

        结果:此由 tiimage 创建的 MLO 不能引导。

     您能否告诉我们我们我们遵循的正确步骤是什么?

     在哪种情况下、我们需要使用 tiimage 创建 MLO?

  问题2有关应用程序创建的信息、

     例如、我构建的项目如下所示:

     C:\TI\pdk_am335x_1_0_6\packages \MyExampleProjects\I2C_Test_evmAM335x_armTestProject\Debug

     有 3个文件:

     应用程序

     I2C_Test_evmAM335x_armTestProject.bin

     I2C_Test_evmAM335x_armTestProject.out

     好的、我已经看到在使用 CCS 编译工程后有"app"文件。

     我将这个"app"和"MLO"放在 SD 卡上、并尝试引导。

     控制台仅显示以下内容:

  

StarterWare 引导加载程序
BOARDInit 状态[0x0]
SoC:[AM335X]
磁芯:[A8]
检测到电路板:[GPEVM]
基板版本:[未知]
子卡版本:[未知]

PIN 复用失败!
将应用程序映像从 MMC/SD 卡复制到 RAM
跳转到 StarterWare 应用程序...

      然后、我使用以下方法进行了测试:

      

  • tiimage.exe 0x8000000000 none I2C_Test_evmAM335x_armTestProject-Binn 应用程序

     然后、我将这个新的"app"放入 SD 卡并启动。

控制台仍显示此信息。

StarterWare 引导加载程序
BOARDInit 状态[0x0]
SoC:[AM335X]
磁芯:[A8]
检测到电路板:[GPEVM]
基板版本:[未知]
子卡版本:[未知]

PIN 复用失败!
将应用程序映像从 MMC/SD 卡复制到 RAM
跳转到 StarterWare 应用程序...

 请指导我创建可引导 SD 卡的正确步骤!!

BR RIO

      

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    RTOS 团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    从日志中可以看到 MLO 文件正在引导、但将应用程序复制到内存或将控制权转移到应用程序存在一些问题。  

    您是在 AM335x EVM 平台还是在定制板上进行测试? 您使用的是哪个修订版电路板? 我们需要了解 SBL 报告引脚多路复用器失败的原因、因为这可能会导致问题。

    [引用用户="Rio Chan"]

    具有 ti 标头( _ti.bin)应重命名为"MLO"。 引导加载程序映像位于  

            结果:我已测试将 xxx_ti.bin 重命名为 MLO,重命名后的 MLO 可以引导。

         但是、此 wiki 还告诉我们:         

            tiimage.exe 0x402F0400 MMCSD boot.bin MLO

            结果:此由 tiimage 创建的 MLO 不能引导。

    [/报价]

    我n`t 了 wiki 上提到的有关将 xx_ti.bin 文件重命名为 MLO 的第一部分、但请勿查看有关的任何说明  

     tiimage.exe 0x402F0400 MMCSD boot.bin MLO... 您能否提供这些说明的位置? 您是否提到旧的 Starterware 文档?

    对于引导加载程序(MLO)、您可以通过使用调用引导加载程序构建来调用 pdk_am335x_x_x_x/packages 中的构建:

    gmake -C ./ti/starterware bootloader BUILDCFG=引导引导模式=mmcsd platform=AM335x-EVM profile=debug -s KW_build=no

    用户应仅了解其应用程序的应用程序创建情况。 次级引导加载程序构建已设置、因此、如果您使用定制板、只需修改源代码即可。

    BTW:我能够使用说明获取 bootloader_boot_mmcsd_a8host_debug.bin 并使用 tiimage.exe 将其转换为 MLO  

      tiimage.exe 0x402F0400 MMCSDbootloader_boot_mmcsd_a8host_debug.bin MLO

    我对文件 MLO 和 bootloader_boot_mmcsd_a8host_debug.bin 进行了二进制比较、它们是相同的。

    我在 AM335x ICEv2 EVM 上n`t 了这一点、因为我没有使用 AM335x GP EVM。

    [引用用户="Rio Chan"]

    问题2有关应用程序创建的信息、

         例如、我构建的项目如下所示:

         C:\TI\pdk_am335x_1_0_6\packages \MyExampleProjects\I2C_Test_evmAM335x_armTestProject\Debug

    [/报价]

    Rio Chan 说:
     请指导我创建可启动 SD 卡的正确步骤是什么!!.[/报价]

    对于应用引导映像创建、PDK 项目使用 pdk_am335x_x_x_x/packages 下的脚本 pdkAppImageCreate.bat、您可以打开该文件并查看 该 bat 文件中 SOC_AM3_AM4函数中的说明。

    每个 PDK 示例 CCS 工程都会将此脚本添加为编译后处理步骤、该步骤会将.out 转换为应用程序(_ti.bin)、因此您可以看到所有这些二进制文件。

    此致、

    Rahul

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

    感谢您的回复。

    第一。 processors.wiki.ti.com/.../AM335X_StarterWare_Booting_And_Flashing
    您能否阅读上述 wiki? 有一节可以解决此问题:
    tiimage.exe 0x402F0400 MMCSD boot.bin MLO

    我已经使用此 MLO 创建进行了测试。
    此命令创建的 MLO 无法引导。

    BTW、您是否说我们需要使用此命令:
    tiimage.exe 0x402F0400 MMCSDbootloader_boot_mmcsd_a8host_debug_ti.bin MLO?

    2。 每当 CCS 完成构建时、我发现有一个名为"app"的文件。
    您是否能够使用此"app"文件引导系统?

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

    正如我提到过的、您所指的 wiki 是一个旧的 Starterware wiki。 请使用我在之前的帖子中提供的说明构建 PDK 中包含的引导加载程序。 构建 MMC SD I 的引导加载程序后,可以将*_mmcsd_release_ti.bin 或*_mmcsd_debug_ti.bin 重命名为 MLO。 您n`t 需要从命令行运行 tiimage.exe

    为 PDK 示例编译 CCS 工程时、编译会调用 pdkAppImagecreate.bat 文件来创建应用文件。 使用 FAT 格式的 SD 卡中的 MLO 和 app 文件验证启动。 这就是系统测试团队测试 SDK 的方式、开箱即用。 如果没有、请提供此处所附的 MLO 和应用文件、供我们尝试。

    此致、

    Rahul