如何在开机过程中uboot打印信息

在目标板启动期间,我们看到uboot(引导加载程序)在控制台上打印一些信息,例如映像名称,映像类型,加载地址,验证校验和等。 它使用哪种打印机制? 它是否使用了像printk这样的东西,或者甚至在内核启动之前它有自己的打印信息定义? 我在哪里可以找到它的打印实施代码?


在正常的U-boot启动过程中,将有限的信息输出到控制台。 它使用与C编程中使用的相同类型的函数来打印信息。

u-boot使用printfputs在控制台上打印信息。 你可以在u-boot源代码中找到相同的函数实现(u-boot boardfile和drivers)。

有很多命令可以从u-boot命令提示中尝试获取更多信息。

要启用更多消息,您可以:

  • 使用debug_cond (cond, fmt, args...):如果你定义了一些cond,一旦满足,U-boot将打印出这条消息。
  • 使用debug(fmt, args...):你可以在文件u-boot- include/configs/<boardfile>_common.h定义DEBUG(就像在我的情况下是mx6_common.h),一旦这样做并重新编译代码, U-boot将打印出所有的调试信息
  • 注意:如果你对代码进行了太多的调试,可能会导致u-boot挂起。


    如果你想获得关于uBoot的信息,例如它打印到哪里或者它的值是什么,你可以使用'printenv'命令并且用'setenv'命令改变它们,你可以在启动时输入uBoot(中断内核启动) '命令。

    链接地址: http://www.djcxy.com/p/66805.html

    上一篇: How does uboot print information during board bring up

    下一篇: QEMU triple faults when enabling paging