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.
您好、TI 专家!
我在 TDA4VM 平台上使用 Linux SDK8.4。
在您的文档中、文件 nor_spi_patterns.bin 是该 addrss 0x3fe0000的闪存。 但现在我们使用32M ospi 闪存。
那么、如何更改 NOR_SPI_Patters.bin 的地址?
此外、如果我 donot flash nor_spi_patterns.bin、则我的板无法从 ospi 引导。
此致、
尊敬的 Xie:
您要使用什么工具来刷写 OSPI? 如果您使用的是 Uniflash、则只需调整地址。
我们有意使用了闪存器件的最后一个扇区、这样它就不会与任何其他用法相冲突。
您正在使用什么引导加载程序? 您可能必须在代码中针对此位置进行调整以进行 OSPI PHY 调优。
此致
苏曼
尊敬的 Suman:
这是我的引导流程、如下所示。
sbl->(app) uboot_spl->uboot->A72内核/DSP 内核/R5F 内核
我们首次使用 xds5602来刷写 OSPI、然后使用 OTA 来更新 OSPI。
您可能必须在代码中针对此位置进行调整以进行 OSPI PHY 调优。
在我的启动流程中、我是否需要像您说的那样执行该操作? 如果需要、需要修改什么代码? 请显示更多信息。
谢谢!
此致、
尊敬的 Xie:
这通常是最后一次擦除块的大小。
因此、如果它是32Mb、则地址应为:
32M -擦除正在使用的闪存部件的块大小。
假设擦除块的大小为128KB、也称为0x20000
即0x2000000 - 0x20000 = 0x1fe0000
在 U-Boot DTS 中进行相同的更改。
此致、
基尔西
Keerthy、您好!
现在、我将板上的地址从0x3fe0000更改为0x1fe0000。
因为我现在不获取32M ospi flash ,所以我使用64M ospi 进行测试。 如果我得到32M ospi 闪存、我将替换它。
但如果我 在电路板上将地址更改为0x1fe0000、则无法在64M ospi 闪存上成功引导。
此外, 控制台上也没有打印。 通常、它将打印在 SBL 上。
我的测试方式是否正确? 如果正确、我是否需要更新任何内容?
在 U-Boot DTS 中进行相同的更改。
是的、我按如下方式进行修改。
谢谢!
此致、
您好!
可以对照 SPL 进行检查吗? 我想您正在检查 SPL。 SBL 将需要在 SBL 中更改代码。
此致、
基尔西
Keerthy、您好!
SBL 将需要在 SBL 中更改代码。
我检查了 SBL 上的代码。 但我找不到任何使用 地址0x3fe0000的东西。 您能告诉我代码的详细信息吗?
谢谢!
此致、
您好!
您应该更改 NOR_SIZE、因为它默认使用最后一个块。
-基尔西
Keerthy、您好!
我发现 SBL 现在可以运行了。 但它的引导应用程序失败。 这是日志。
SBL 修订版本:01.00.10.01 (OCT 25 2023 - 10:11:48)
单个图像标头中的无效幻数
从日志来看、这 意味着应用文件不正确。
我很困惑。 当我使用 SD 卡引导模式时、SBL 可以成功引导同一个应用程序。
问题是什么? 我已按照上次显示的方式修改了 uboot DTS。
谢谢!
此致、
您好!
对此深表歉意。
我很困惑。 当我使用 SD 卡引导模式时、同一个应用程序可以通过 SBL 成功引导。
这意味着 SBL 读取的图像错误。 您能否确认 PHY 调优是否成功?
此外、在尝试从闪存进行引导之前、使用驱动程序示例验证闪存可能是一个更好的主意。
此致、
帕尔特