orangepi uboot 启动提示找不到设备树文件 无法启动内核

在OrangePi 3平台上,使用全志H6芯片和4.9.118版Linux内核时,遇到U-Boot启动提示找不到设备树文件。尽管文件实际存在且头部信息检查正常,问题依然存在。经过排查,发现错误源于`fdt_check_header`函数中的设备树头部检查。通过屏蔽该检查,使得启动内核得以成功。目前系统运行正常,但潜在影响尚在测试中。
摘要由CSDN通过智能技术生成

平台:orangepi 3
芯片:全志 H6
Linux 内核版本:4.9.118
uboot 版本: 2014.07

最近项目上总是遇见一个问题 ,就是uboot 启动过程中提示

** File not Found /boot/dts/sunxi/sunxi-orangepi-3.dts**
	libfdt fdt_check_header:FDT_ERR_BADMAGIC

但是直接查看内存卡后看到设备树文件存在 并且在该目录下,并且 在uboot中使用fdt 命令查询设备树都可以查看到 ,使用了fdt header 可以查看到 设备树头部信息 使用fdt print 也可以打印出 设备树的信息
说明设备树应该没有问题,并且在ubuntu 中 对 该目录下的文件进行修改 只是 把原来的东西 剪切后再粘贴 等于没有动任何东西吧 应该, 再使用后就可以找到设备树并成功启动内核了
真是玄学, 也尝试过其他解决方式,重新装过uboot 重新换过 内核 ,重新烧写镜像,甚至怀疑是内存卡的问题,换过别的牌子的内存卡 使用过emmc 但该问题一直存在。

于是 直接查看该报错出处 , 发现在检查头部信息的函数 fdt_check_header 中 ,这个函数的调用在 board_init_f ->fdtdec_prepare_fdt 函数中,该函数内容如下:

int fdtdec_prepare_fdt(
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值