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.

[参考译文] AM6548:EVK 上的 OSPI 上的 CAN't BOOT

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1195773/am6548-can-t-boot-on-ospi-on-the-evk

器件型号:AM6548

您好!

我正在尝试从 OSPI 上的 MT35X NOR 闪存启动 AM648 EVK 板。 目前的情况是:

-我成功地用 Yocto 生成了一个.WIC。
该.WIC 在 SD 卡上刷写后会正常启动。
-我在 U-Boot 中添加了对使用 CONFIG_SPI_FLASH_MT35XU=y 的 MT35X NOR 闪存的支持。
-然后 在 U-Boot 中正确检测到闪存:

Fullscreen
1
2
=> sf probe
SF: Detected mt35xu512aba with page size 256 Bytes, erase size 128 KiB, total 64 MiB
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

-我能够正确地在 OSPI 中进行写入/读取。
-从 U-Boot I flash tidboot3.bin、tispl.bin、u-boot.img、sysfw.itb 到 OSPI 上、也不使用:

Fullscreen
1
fatload mmc 1 ${loadaddr} tiboot3.bin; sf update $loadaddr 0x0 $filesize; fatload mmc 1 ${loadaddr} tispl.bin; sf update $loadaddr 0x80000 $filesize; fatload mmc 1 ${loadaddr} u-boot.img; sf update $loadaddr 0x280000 $filesize; fatload mmc 1 ${loadaddr} sysfw.itb; sf update $loadaddr 0x6C0000 $filesize
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

其中 MMC 1是我的 SD 卡、如所示:

Fullscreen
1
2
3
=> mmc list
mmc@4f80000: 0
mmc@4fa0000: 1 (SD)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

-我按如下方式设置引导模式开关:

  • [3..0]   0001        :OSPI 主引导
  • [6..4]    100          :MMCSD 备份引导模式
  • [7]        0              :无最小模式
  • [15..8] 11000101:八路快速读取32/I 时钟(回路时钟)外部源,与带有延迟线路/32位地址总线的 DQS/CS=0/33 MHz SDR 相同<=我对此有疑问
  • [18.16.]010          :端口1上的备份 SD

但系统仅在备份 SD 上引导、如果我将其移除、终端将保持空白。

我是否需要修改其他内容才能在 OSPI 上启动?

此外,生成的.WIC 在引导分区中还有2个不同的.ITB:

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
=> fatls mmc 1
EFI/
19984896 Image
267766 sysfw-am65x-evm.itb
267770 sysfw.itb
149121 tiboot3.bin
759488 tispl.bin
979484 u-boot.img
574 uEnv.txt
7 file(s), 1 dir(s)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

看一下它们的尺寸、它们看起来稍有不同。 我试图闪存两个、运气不好。

我还必须承认、我越了解 AM65上的引导过程、我就越了解它。 我阅读了有关引导过程的 TRM 部分、但我目前不了解这些二进制文件的来源。

我们欢迎您的任何帮助、我们将提前向您表示感谢。

此致
Pierre Buffo

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

    您好、Pierre、
    首先、最好知道您能够从 SD 卡引导、新的 OSPI-NOR 被检测到@u-boot 从 SD 引导。
    1. SR1.0 SoC 与板载 SR2.0 SoC:
    -两个 sysfw.itb:,一个用于 SR1.0,另一个用于 SR2.0
    - AM65x TRM
    表1-4. 器件 JTAG ID 值
    CTRLMMR_WKUP_JTAGID @0x43000014
    例如、@u-booot
    MD.L 043000014 1.
    0BB5A02F => SR1.0

    2. AM65x 引导流程的另一个视图
    git.ti.com/gitweb

    最棒的
    -香港

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

    您好、Hong、

    我有 SR2.0版本、如 U-Boot 中所示:

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    [...]
    U-Boot 2023.01-g62e2ad1cea (Jan 09 2023 - 16:07:33 +0000)
    SoC: AM65X SR2.0 GP
    Model: Texas Instruments AM654 Base Board
    Board: AM6-COMPROCEVM rev B
    DRAM: 4 GiB
    [...]
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    和:

    Fullscreen
    1
    2
    => md.l 43000014 1
    43000014: 1bb5a02f
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    我已经检查了您发送的 U-Boot 自述文件。 它确实非常简洁、但遗憾的是、它对我的问题没有帮助。

    在 U-Boot 配置中是否有需要更改的内容?

    此致
    Pierre Buffo

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

    我做得更远了、

    事实证明引导配置正确、主要问题是 U-Boot 无法从 OSPI 读取/写入。 我必须使用 Linux 中的 flashcp 来写入 NOR。 尽管现在系统在 U-Boot 之前一直处于停滞状态:

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    U-Boot SPL 2023.01-g62e2ad1cea (Jan 09 2023 - 16:07:33 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0016 '22.1.1--v2022.01 (Terrific Llam')
    SPL initial stack usage: 1432 bytes
    Trying to boot from SPI
    spl_load_fit_image: Skip load 'dm': image size is 0!
    Starting ATF on ARM64 core...
    NOTICE: BL31: v2.7(release):v2.7.0-359-g1309c6c805-dirty
    NOTICE: BL31: Built : 11:40:36, Sep 8 2022
    I/TC:
    I/TC: OP-TEE version: 3.19.0 (gcc version 11.3.0 (GCC)) #1 Fri Oct 14 19:00:05 UTC 2022 aarch64
    I/TC: WARNING: This OP-TEE configuration might be insecure!
    I/TC: WARNING: Please check optee.readthedocs.io/.../porting_guidelines.html
    I/TC: Primary CPU initializing
    I/TC: SYSFW ABI: 3.1 (firmware rev 0x0016 '22.1.1--v2022.01 (Terrific Llam')
    E/TC:0 0 tee_otp_get_hw_unique_key:87 Could not get HUK
    E/TC:0 0 call_initcalls:43 Initcall __text_start + 0x00060808 failed
    I/TC: Activated SA2UL device
    I/TC: Fixing SA2UL firewall owner for GP device
    I/TC: Enabled firewalls for SA2UL TRNG device
    I/TC: SA2UL TRNG initialized
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    现在、我将开始调查 U-Boot 配置

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

    您好、Pierre、
    通过最新的日志、您可以了解在电路板上启用新闪存的进度。。
    -R5-spl、ATF、OTEE 从 OSPI-NOR 加载并运行;
    -从 OSPI-NOR 加载 A53-spl、开始运行... 然后以某种方式锁定...
    最棒的
    -香港

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

    您好、Hong、

    是 A53 SPL 锁住了吗? 还是 U-Boot 在启动时?

    是否有任何关于下一步尝试的想法? 我整天都在进行各种尝试、但没有任何结果。 我尝试在 U-Boot 中添加一些选项、但它只会使情况更糟、如上所示:

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    U-Boot SPL 2023.01-g62e2ad1cea (Jan 09 2023 - 16:07:33 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0016 '22.1.1--v2022.01 (Terrific Llam')
    SPL initial stack usage: 1432 bytes
    Trying to boot from SPI
    spl_load_fit_image: Skip load 'dm': image size is 0!
    SPL: failed to boot from all boot devices (err=-6)
    ### ERROR ### Please RESET the board ###
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    因此、我最终反转了这些更改。

    正如我之前说过的,从 U-Boot 读取/写入操作有问题,这可能是问题的根源?

    SF 测试确认读/写问题:

    Fullscreen
    1
    2
    3
    4
    => sf test 0 1000
    SPI flash test:
    Erase failed (err = -22)
    Test failed
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

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

    您好、Pierre、
    锁定点在边界附近、在 u-boot 加载/运行之前、或 u-boot 运行之前、但尚未打印 u-boot 横幅...
    假设 A53-spl 从 OSPI-NOR 加载、由 R5-spl => tiboot3.bin 中的 DTB 在闪存配置上"应该"良好...
    您可以交叉检查 tispl.bin、u-boot.img...中的 dtbs
    最棒的
    -香港

x 出现错误。请重试或与管理员联系。