苏林_SLRofa 2023-03-08 09:34 采纳率: 14.3%
浏览 85
已结题

uboot自举的比较阶段陷入死循环


如题,我在飞思卡尔的mpc5xxx上移植uboot,
当我屏蔽board_r.c中的数组init_sequence_r中的函数interrupt_init函数时,uboot正常启动,但当我取消注释时,代码在relocate_code的比较分支20中陷入死循环,不理解一个还未被调用的函数时如何影响到它之前的代码运行的。大家有遇到这样的问题吗?

img

  • 写回答

8条回答 默认 最新

  • 宛家 2023-03-08 09:49
    关注

    可能是因为你打开了interrupt_init函数,导致与中断相关的一些寄存器或状态被错误地初始化或配置。这有可能导致之后的代码陷入死循环,因为它无法正确地处理中断,并且不断重复执行相同的指令。

    你可以尝试调试中断初始化代码,或者查看关于这个特定硬件平台上中断初始化的更多资料。另外,确保你对相应的硬件平台有足够的了解,并理解中断初始化的作用和影响。

    评论

报告相同问题?

问题事件

  • 系统已结题 3月16日
  • 创建了问题 3月8日