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!
我正在将采用 AM3703的非常旧的电路板升级到最新的 u-boot 版本。 内核5.10已经完成并在该板上运行、因此现在我要升级 u-boot、然后我将升级 MLO (目前仍在使用旧的 MLO)。
电路板在 SD 卡上引导。 第一个 SD 卡分区上有 MLO 和 u-boot。 将 u-boot 二进制文件加载到 SD RAM 即可正常工作。 然后跳跃看起来正常。 但控制台中不会显示 u-boot 日志。 我怀疑尝试设置的 u-boot 配置错误、但不知道从何处开始搜索。 我用 Lauterbach JTAG 调试器来查看 u-boot 的执行情况。
首先、我使用 JTAG 连接重置电路板、然后在 u-boot (0x80008000)的开头插入一个断点、然后逐步执行。
执行在 OMAP-SMc1函数(lowlevel_init.S 文件) 的"SMC 0 @ SMC #0行挂起、以进入监控模式"。 请参阅以下屏幕截图(寄存器显示在左侧)。
现在我很高兴看到了这一点,但不知道该怎么做! 您可以向我提供哪些关于此主题的建议?
感谢您的帮助、
Joel
编辑:这是 u-boot 2021.01,而不是2021.10 :-)
您好、Joel、
我们是否可以尝试以下操作:
a)。在"SMC 0..."之后的下一条指令处设置硬件断点
B)。从 T32点击"run"
c)。 HW bkpt 是否在 a) break 中设置?
最棒的
-香港
您好 、Hong Guan64
感谢您的快速回答。
实际上、当我运行该指令时、我没有完全卡住、执行 SMC 指令时、会调用一个中断(T32表示"在矢量捕获处停止")、而我的 PC 为0x80800010。
此时的屏幕截图:
此致、
Joel
您好、Joel、
在某些传统器件中(即 OMAP37xx)、引导 ROM 通过监控器调用"SMC 0..."支持基元服务。
有关这些服务、请参阅 AM73xx TRM 的26.4.1引导概述。
如果您能够看到调用"SMC 0..."的呼叫流、是否已尝试设置 bkpt @从"SMC 0..."返回?
最棒的
-香港
您好 、Hong Guan64
我逐步执行了代码、最后我删除了一个要执行此操作的调用、因此我现在无法访问它。
我已经使用了定义 CONFIG_SKIP_LOW_LEVEL_INIT 来完成该操作、该定义跳过了多个器件、尤其是此问题中提到的器件。
但是、我现在在初始化的稍后部分被阻止、但我需要在调试中继续。
最后一个问题:如何知道要在特定平台上设置哪些 u-boot 选项以及不设置哪些 u-boot 选项? 是否有一些可以输入 SOC 和引导类型等的 u-boot 配置生成器? 实际上、我将要扔掉代码并逐步执行调试、但逐个配置每个选项并不是很方便!!!
感谢您的反馈!
Joel
您好、Joel、
U-boot 板移植
software-dl.ti.com/.../U-Boot.html
我将 SPL、u-boot、u-boot 附加到内核启动流程以供您参考。
最棒的
-香港
e2e.ti.com/.../0576.spl_5F00_boot_5F00_flow_5F00_v1.pdf
您好!
谢谢你们的热情,这将对我有所帮助:-)
祝你度过美好的一天
Joel