【ZYNQ】制作从 QSPI Flash 启动 Linux 的启动文件

本文介绍了如何通过复制PetaLinux工程并进行配置,生成从QSPIFlash启动的Linux镜像。首先复制项目文件,然后配置工程以选择primaryflash作为启动媒体,设置INITRAMFS作为根文件系统类型,并调整分区大小。接着,通过petalinux-build和petalinux-package命令编译和打包BOOT.bin文件,最后将此文件烧写进QSPIFlash。

这篇文章 中学习了使用 PetaLinux 定制 Linux 的方法,制作了 SD 卡启动文件,本期介绍如何使用 PetaLinux 配置生成从 QSPI Flash 启动的 Linux 镜像文件。

复制 Petalinux 工程

如果我们想保留 SD 卡启动的 Petalinux 工程,但是又不想新建一个,我们可以把老工程复制一份。

  • 在工程目录同时按键 Ctrl +H,显示隐藏文件,将 project-spec、.petalinux、config.project 复制到一个新的目录,作为一个新的 Petalinux 工程

在这里插入图片描述

  • 再把 images/linux 目录下的 bit 文件也复制到新的工程目录下,用于合成带 PL 配置的 BOOT

在这里插入图片描述

  • 进入新工程,右键选择打开终端

在这里插入图片描述

配置编译 Petalinux

  • 配置 Vivado 和 Petalinux 环境变量
source /opt/pkg/petalinux/settings.sh
source /opt/Xilinx/Vivado/2017.4/settings64.sh

在这里插入图片描述

  • 使用 petalinux-config 命令配置 Petalinux 工程
petalinux-config

在这里插入图片描述

  • 进入 Petalinux 配置界面

在这里插入图片描述

  • Subsystem AUTO Hardware Settings ---> Advanced bootable images storage Settings ---> boot image settings ---> image storage media 选项中选择 primary flash

在这里插入图片描述

  • Subsystem AUTO Hardware Settings ---> Advanced bootable images storage Settings ---> kernel image settings ---> image storage media 选项中选择 primary flash

在这里插入图片描述

  • Subsystem AUTO Hardware Settings → Flash Settings 中可以修改 QSPI flash 的分区,默认的
    就差不多可以使用,如果你的文件大小超过了默认分区的大小,要自己调整一下

在这里插入图片描述

  • Image Packaging Configuration ---> Root filesystem type 选择 INITRAMFS,使用 RAM 类型
    的根文件系统,这样就可以方便打包烧写到 QSPI Flash

在这里插入图片描述

  • Firmware Version Configuration 中可以修改 Host name 等信息

在这里插入图片描述

  • 保存配置

在这里插入图片描述

  • 退出并编译

在这里插入图片描述

  • 使用 petalinux-build 命令编译工程

在这里插入图片描述

  • 使用下面命令合成 BOOT,和前面的教程的差异就是多出 --kernel 选项,把内核也打包到
    BOOT.bin 文件里
petalinux-package --boot --fsbl ./images/linux/zynq_fsbl.elf --fpga ./images/linux/platform.bit --u-boot --kernel --force

在这里插入图片描述

  • 生成 bin 文件

在这里插入图片描述

将 BOOT.bin 烧写进 QSPI Flash

未完待续…

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hello阿尔法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值