Petalinux从QSPI Flash booting

本文面向Linux开发人员,介绍从QSPI Flash启动及烧写Linux系统的方法。先参考文档进行配置,通过petalinux - build和petalinux - package生成BOOT.BIN文件,再将Linux系统烧写到QSPI flash,包括擦除和写入操作,写入有三种方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:
使用对象:linux开发人员。如果只是开发linux端的应用或者内核,其实是可不用xilinx SDK软件的。
1. xilinx SDK 软件的有些功能不能用,在创建Application的时候出错。
2. 没有JTAG调试器

从QSPI Flash booting

参考:ug1165-zynq-embedded-design-tutorial.pdf

查找:Booting Linux from QSPI Flash

  • cd

  • petalinux-config

  • Select Subsystem AUTO Hardware Settings

    • Select Advanced Bootable Images Storage Settings.
      • Select boot image settings.
      • Select Image Storage Media.
      • Select boot device as primary flash.
    • Select Advanced Bootable Images Storage Settings
      • Select kernel image settings.
      • Select Image Storage Media.
      • Select the storage device as primary flash.
  • 保存配置,petalinux-build

  • petalinux-package --boot --format BIN --fsbl images/linux/zynq_fsbl.elf --fpga images/linux/system.bit --u-boot --force

    生成BOOT.BIN文件

  • 烧写linux系统到QSPI flash

生成BOOT.BIN文件

petalinux-package --boot --format BIN --fsbl images/linux/zynq_fsbl.elf --fpga images/linux/system.bit --u-boot --force

生成BOOT.BIN文件

烧写linux系统到QSPI flash

擦除 QSPI flash

sf probe 0 0 0
sf erase 0 0x01000000 //从0地址开始,擦除16M

或者

eraseall /dev/mtd0 //linux命令

写QSPI flash

写QSPI flash有三种方式:

  1. 使用xilinx SDK软件来擦除,需要JTAG调试器,SDK软件安装出问题几率很大,所以不喜欢用这种方式。

  2. 使用flashcp命令来写QSPI flash

    • 把生成的新的BOOT.BIN 重新起个名字 BOOT_QSPI.BIN,然后考到sd卡里

    • JP2连接,JP3打开,从SD卡启动,进入linux系统

    • df -h,查看sd卡在哪

    • flashcp /run/media/mmcblk0p1/BOOT_QSPI.BIN /dev/mtd0,

      • 写到分区0,也可以使用dd命令:dd if= /run/media/mmcblk0p1/BOOT_QSPI.BIN of=/dev/mtd0
    • flashcp /run/media/mmcblk0p1/image_QSPI.ub /dev/mtd2,写到分区2

      • 写到分区0,也可以使用dd命令:dd if=/run/media/mmcblk0p1/image_QSPI.ub of=/dev/mtd2
  3. 使用u-boot命令sf来写QSPI flash

    • JP2连接,JP3打开:进入SD卡模式启动
    • 进入U-boot
    • 使用sf命令写QSPI flash

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值