如何在i.MX6Q上检查和调试Yocto的bootloader?

时间:2017-05-19 08:11:43

标签: linux bootloader yocto imx6

我正在使用不受信任的处理器模式的Linux Yocto版本在IMX6Q上构建可信执行环境。当我在重置加载linux内核后第一次切换到非安全时,在跳转到内核bootloader之后,我被数据充斥并预取中止异常。看起来,这些异常一旦MMU就会发生已开启。

在不更改为非安全状态的情况下引导内核工作正常。

第一阶段页表的非安全副本的控制位是否可以写入NS-Bit清除,导致MMU拒绝对这些区域的任何访问?

在哪里可以找到在Yocto-BSP中为IMX6Q设置页面表的启动代码?

如何调试Linux Bootloader?

是否可以简单地在BSP的build-directory中更改引导加载程序的源代码并重建映像?

提前致谢,

1 个答案:

答案 0 :(得分:1)

  

如何调试Linux Bootloader?

是的,你可以使用漂亮的printf / puts ... BTW如果你想在jtag的早期阶段使用uboot进行真正的调试,你可以参考{ {3}}

  

是否可以简单地在BSP的build-directory中更改引导加载程序的源代码并重建映像?

您可以在workbuild/tmp/work/.中轻松使用u-boot的git目录。 DIR

  1. 修改您需要的内容
  2. 使用bitbake -f -c compile u-boot-imx
  3. 进行编译
  4. 使用bitbake -f -c deploy u-boot-imx
  5. 部署它

    最后,您的新u-boot将被放置在通常的workbuild/tmp/deploy/images/...