uboot引导内核报错

uboot引导内核时:

=>bootm 0x00008000
##Booting Kernel from Legacy Image at 0x00008000 ...
   Image Name:  
   Image Type:   AArch64 Linux RAMDisk Image (uncompressed)
   Data Size:    30394376 Bytes = 29MiB
   Load Address: 00000000
   Entry Point :00000000
   loading kernel Image
FDT and ATAGS support not compiled in-hanging
### ERROR ### Please RESET the board ###

这个错误怎么解决,是不是什么被覆盖了?
多谢各位!

该回答引用ChatGPT
这个错误表明,内核加载失败,原因是没有编译FDT和ATAGS支持。

FDT (Flattened Device Tree)是用于描述系统硬件配置的标准格式。 ATAGS是另一种内核配置方式。

解决方案是:

1、在内核源代码编译选项中启用FDT和ATAGS支持。

2、使用一个包含编译FDT和ATAGS支持的内核。

如果您不确定如何执行以上步骤,请继续查询相关文档或与内核开发者联系,以了解如何构建一个带有FDT和ATAGS支持的内核。

你这个是搞???
看上去,第一反应,应该是没有正确加载内核镜像或者内核镜像加载失败导致的。
这就需要排查几个地方了,例如:
内核镜像文件是否存在?是否完整或者损坏?
加载内核镜像的地址是否设置正确?


反正,说这么多,其实就是需要检查uboot的设置,确保内核镜像文件存在,还有正确设置内核镜像的加载地址和入口地址。

  • 给你找了一篇非常好的博客,你可以看看是否有帮助,链接:uboot启动内核