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-J784S4:从 eMMC 从引导配置中引导

Guru**** 2477065 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1451998/processor-sdk-j784s4-boot-from-emmc-from-boot-paritions

器件型号:PROCESSOR-SDK-J784S4

工具与软件:

大家好、团队成员:

  我想从 J784S4定制电路板中的 eMMC UDA 分区引导。 除此之外、我将引导内容写入 UDA i.e、/dev/mmcblk0p1的第一个分区、并将 PARTCONFIG 启用为用户模式、如附图所示。

 成功写入内容后、我将引导开关更改为 eMMC 模式、并为电路板加电、但会产生空白屏幕。
我想指定我们为 eMMC 的两种引导模式使用单/相同的引导开关配置。

仅供参考、出于某些其他目的、我能够在 eMMC 的 UDA 分区中写入/读取内容、并且还能够从 eMMC 安装 rootfs。

我将定制电路板的硬件原理图与 J784S4进行了比较。 但我没有发现任何显著的差异。

  那么、发生这种情况的可能原因是什么、解决方法是什么?

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

    您好 Naradham

    您能否共享 eMMC 引导的引导模式引脚设置? 有关详细信息、请参阅 TRM 中的第4章-初始化。 (请参阅第4.3章"引导模式引脚")

    谢谢。

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

    您好 Praveen Rao、

     以下是我的定制电路板中 eMMC 引导的引导模式引脚设置

     谢谢。

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

    尊敬的 Dharanija:

    从 eMMC 引导之前、您可以输入 uboot 并键入以下命令。

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

    您好 Praveen、

    感谢您的答复!

    我 通过 U-Boot 命令行界面通过保持在 SD 卡引导模式提供了以下命令。

    MMC partconf 0 1 7 1.

    MMC bootbus 0 2 0 0

    之后、如上表所述、关闭电源并将引导开关更改为 eMMC 模式、并复位电源、但仍保持正常 从而出现空白屏幕。

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

    尊敬的 Naradhan:

    您能尝试连接到调试器、连接到 MCU R5内核并尝试获取 PC 寄存器指向的地址吗、因为引导 ROM 可能会发生故障。

    此致

    Gokul

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

    您好 Praveen、

      感谢您的答复、我会检查您提到的内容。  

      在那之前,请帮助我得到澄清从你的终端以下事情!!

    在其 Linux SDK 中、我在哪里可以找到 J784S4 EVM 的 eMMC 引导和 UDA 模式的引导开关设置?

    2.我尝试从 eMMC 的 BOOT0分区引导。 为此、我尝试通过保持在 SD 卡模式使用以下一组命令。

     

    我已经根据我各个引导文件(tiboot3.bin、tispl.bin 和 u-boot.img)的大小计算了块偏移量和块计数、如随附的图所述。

    您能否确认更改块偏移是否会以任何方式影响引导过程?

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

    尊敬的 Naradham:

    1.在哪里可以找到 J784S4 EVM 的 eMMC 引导和 UDA 模式的引导开关设置?

    但在 Linux SDK 中的任何位置实际上都没有提及它。 但是、您可以遵循以下上述设置、这些设置在所有 Jacinto 器件中通用。

    您能否确认更改块偏移是否会以任何方式影响启动过程?

    实际上、bootloader 获取代码的块偏移量是固定的。 您能否帮助我们了解您正在使用的 SDK 版本、因为偏移量会因版本而异。 如果使用10.0 SDK 版本、则可以按照以下命令从 SD 卡复制到 boot 0分区:

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

    Praveen、您好!
       1.我正在使用的 SDK 版本是  TI-PROCESSOR-SDK-09_02_00  请相应地建议块偏移量。

       2.boot capacity:我在 J784S4定制电路板中使用的 eMMC 4MiB 加强版。 如果我遵循 TI 网站中提供的块偏移量、那么这个启动大小就不够。( https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-j784s4/09_02_00_05/exports/docs/linux/Foundational_Components UCLA-Boot/UG-Memory.html#partitioning-eMMC-from-u-boot)

     所以、我想知道是否有办法通过软件更改引导分区的大小?

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

    尊敬的 Naradham:

     因此、我想知道是否有办法通过软件更改引导分区的大小?

    实际上、没有办法更改引导分区的大小、因为它是由 eMMC 制造商根据 EMMC 标准决定的。

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

    大家好、团队成员:

     作为继续上一个查询,我想从 UDA 的 eMMC 引导. 为此、我已将引导开关设置为 eMMC 模式、并将引导内容写入相应的分区(mmcblk0p1)。 但仍然无法引导、并在电路板上电后导致黑屏作为输出。

    为了进一步调试此问题、我应该研究哪些其他方面、例如 U-Boot 设置或其他相关配置?

    仅供参考、我能够从 eMMC 的 UDA 成功安装 rootfs。

    此致、

    Dharanija.

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

    尊敬的 Naradham:

    要进一步调试此问题、我还应研究哪些其他方面、例如 U-Boot 设置或其他相关配置?[/QUOT]

    如果您能够成功地安装 rootfs、那么最主要的问题是您的自定义板上的启动开关设置。 您能否尝试连接到调试器、连接到 MCU R5内核并尝试获取 CTRLMMR_WKUP_DEVSTAT 寄存器的值、因为引导 ROM 根据该值设置引导模式。 该寄存器的值映射到引导开关设置。 因此、如果该值不正确、唯一的原因是引导开关未设置 DEVSTAT 寄存器中与 eMMC UDA 对应的正确值、从而导致引导失败、因为引导 ROM 失败。

    此外、在从 UDA 分区引导之前、请在 uboot 中设置以下所述设置。