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.
您好!
我正在尝试从 OSPI 上的 MT35X NOR 闪存启动 AM648 EVK 板。 目前的情况是:
-我成功地用 Yocto 生成了一个.WIC。
该.WIC 在 SD 卡上刷写后会正常启动。
-我在 U-Boot 中添加了对使用 CONFIG_SPI_FLASH_MT35XU=y 的 MT35X NOR 闪存的支持。
-然后 在 U-Boot 中正确检测到闪存:
=> sf probe SF: Detected mt35xu512aba with page size 256 Bytes, erase size 128 KiB, total 64 MiB
-我能够正确地在 OSPI 中进行写入/读取。
-从 U-Boot I flash tidboot3.bin、tispl.bin、u-boot.img、sysfw.itb 到 OSPI 上、也不使用:
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
其中 MMC 1是我的 SD 卡、如所示:
=> mmc list mmc@4f80000: 0 mmc@4fa0000: 1 (SD)
-我按如下方式设置引导模式开关:
但系统仅在备份 SD 上引导、如果我将其移除、终端将保持空白。
我是否需要修改其他内容才能在 OSPI 上启动?
此外,生成的.WIC 在引导分区中还有2个不同的.ITB:
=> 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)
看一下它们的尺寸、它们看起来稍有不同。 我试图闪存两个、运气不好。
我还必须承认、我越了解 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 中所示:
[...] 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 [...]
和:
=> md.l 43000014 1 43000014: 1bb5a02f
我已经检查了您发送的 U-Boot 自述文件。 它确实非常简洁、但遗憾的是、它对我的问题没有帮助。
在 U-Boot 配置中是否有需要更改的内容?
此致
Pierre Buffo
我做得更远了、
事实证明引导配置正确、主要问题是 U-Boot 无法从 OSPI 读取/写入。 我必须使用 Linux 中的 flashcp 来写入 NOR。 尽管现在系统在 U-Boot 之前一直处于停滞状态:
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 I/TC: SA2UL Drivers initialized I/TC: Primary CPU switching to normal world boot 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') Trying to boot from SPI k3-navss-ringacc ringacc@2b800000: Ring Accelerator probed rings:286, gp-rings[96,32] sci-dev-id:195 k3-navss-ringacc ringacc@2b800000: dma-ring-reset-quirk: enabled
现在、我将开始调查 U-Boot 配置
您好、Pierre、
通过最新的日志、您可以了解在电路板上启用新闪存的进度。。
-R5-spl、ATF、OTEE 从 OSPI-NOR 加载并运行;
-从 OSPI-NOR 加载 A53-spl、开始运行... 然后以某种方式锁定...
最棒的
-香港
您好、Hong、
是 A53 SPL 锁住了吗? 还是 U-Boot 在启动时?
是否有任何关于下一步尝试的想法? 我整天都在进行各种尝试、但没有任何结果。 我尝试在 U-Boot 中添加一些选项、但它只会使情况更糟、如上所示:
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 ###
因此、我最终反转了这些更改。
正如我之前说过的,从 U-Boot 读取/写入操作有问题,这可能是问题的根源?
SF 测试确认读/写问题:
=> sf test 0 1000 SPI flash test: Erase failed (err = -22) Test failed
您好、Pierre、
锁定点在边界附近、在 u-boot 加载/运行之前、或 u-boot 运行之前、但尚未打印 u-boot 横幅...
假设 A53-spl 从 OSPI-NOR 加载、由 R5-spl => tiboot3.bin 中的 DTB 在闪存配置上"应该"良好...
您可以交叉检查 tispl.bin、u-boot.img...中的 dtbs
最棒的
-香港