新版petalinux生成的u-boot是通过boot.scr来加载linux kernel的。如果我们用petalinux工程默认配置和下面命令生成boot image并从flash启动,会出现下面的错误:
petalinux-package --boot --u-boot --kernel
device 0 offset 0xf40000, size 0x6400000
SF: 104857600 bytes @ 0xf40000 Read: OK
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Booting using Fit image failed
在2021.1和2021.2的boot.scr中,linux fit image的offset是通过下面的配置来设置的:
petalinux-config → u-boot Configuration → u-boot script configuration(qspi fit image offset默认0xF40000)
但是petalinux-package命令生成的BIF文件里,fit image的offset采用的是“petalinux-config->Subsystem AUTO Hardware Settings->Flash Settings”里第二个partition(默认名字为kernel)的offset来配置的。所以就会出现boot.scr读取到错误数据的问题。解决办法就是保持这两个配置里的offset一致。
审核编辑:汤梓红
-
FlaSh
+关注
关注
10文章
1715浏览量
154675 -
赛灵思
+关注
关注
33文章
1797浏览量
133136 -
Linux
+关注
关注
88文章
11627浏览量
217907
原文标题:开发者分享|如何配置Petalinux工程来从Flash启动Linux Kernel
文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
从零开始驯服Linux(一):ZYNQ-Linux启动文件构建全解析
【Artix-7 50T FPGA试用体验】基于官方BSP的PetaLinux工程创建
无法打包组件linux / rootfs
【MYD-CZU3EG开发板试用体验】05-基于CZU3EG的petalinux使用方法
构建petalinux时失败,无法构建linux的原因是什么?
如何在petalinux上运行精灵?
【创龙TLZ7x-EasyEVM评估板试用连载】+基于petalinux的Ubuntu移植
Zynq Petalinux编译用户自定义系统
测试Petalinux BSP镜像参考例子
petalinux(二)开启petalinux内核调试模式
U-boot传递RAM和Linux kernel读取RAM参数的解析
Petalinux工程中设备树的介绍
如何在Petalinux创建Linux内核模块?
在Linux/U-Boot里为QSPI Flash使用UBIFS
Linux配置kernel使用ramdisk文件系统

如何配置Petalinux工程来从Flash启动Linux Kernel
评论