Petalinux初学者快速入门教程

一、设计流程步骤如下:

先去官网下载一个对应的bsp包,如果没有,可以自定义工程,自己建自己的项目,在开始阶段,先用bsp熟悉一下开发流程:

我这里下的是zc702 的bsp板级支持包。bsp下载地址

首先安装bsp包到自己想建立工程的目录下:后面的bsp包根据自己需要填写bsp路径,我已进入到bsp的同级目录下了。

petalinux-create -t project -s xilinx-zc702-v2018.2-final.bsp

之后会创建一个文件夹在与bsp同级的目录下:目录名为xilinx-zc702-2018.2/

cd到该目录下,执行编译:(如果你想配置内核以及文件系统可以根据上面图中的命令自行尝试,这里为了便于演示流程略了)

petalinux-build

之后等待较长的一段时间,就会生成对应于你板子的响应镜像了,之后步骤见第三步

二、建立自己的工程,不用bsp,这时候需要对应你板子的hdf文件

2.1.先创建属于自己的petalinux工程,项目名自定义,命令为有效命令那一行,里面的参数自己设置

模板:petalinux-create --type project --template --name
有效命令:petalinux-create --type project --template zynq --name test_pro

参数说明:
--template - 支持的CPU types值如下,我用的是zynq的板子:
1 zynqMP (for UltraScale+ MPSoC)
2 zynq (for Zynq)
3 microblaze (for MicroBlaze).
Note: The MicroBlaze option cannot be used along with Zynq or Zynq UltraScale+ designs in
the Programmable Logic (PL).

--name - 你想建立的项目名字

2.2 从vivado导出自己硬件平台,之后导入petalinux工程,便于ptlnx知道你用的是什么板子

2.3 导入hdf文件

petalinux-config --get-hw-description=注意右边的hdf文件是填写hdf文件所在路径中的目录即可,不必包含hdf文件。

2.4 编译

petalinux-build

三、编译之后会在"

  • "Image" : Zynq UltraScale+ MPSoC
  • "zImage" : Zynq-7000
  • "image.elf" : MicroBlaze
  • "image.ub":FIT镜像
  • 3.1 生成uImage-如果你需要的话

    petalinux-package --image -c kernel --format uImage

    之后会在同目录下生成uImage。

    3.2 对zynq7000系列生成引导镜像(对其他产品暂不说明,详情看UG1144吧,有需要的下方留言评论,我再翻译一下)

    petalinux-package --boot --fsbl --fpga --u-boot

    说明:
    petalinux-package --boot:是一条命令,生成BOOT.bin的引导文件,详情见UG1157

    --fsbl:磁盘/SD卡上到达FSBL elf二进制文件的路径,默认:/images/linux.
    • zynqmp_fsbl.elf for Zynq UltraScale+MPSoC
    • zynq_fsbl.elf for Zynq-7000
    • fs-boot.elf for MicroBlaze.

    --fpga:磁盘上bit二进制流文件的路径,也就是vivado生成的bit文件路径,无默认,由用户指定

    --u-boot:可选的,磁盘上U-Boot二进制文件的路径, 默认:/images/linux
    • u-boot.elf for Zynq family device
    • u-boot-s.bin for MicroBlaze.

    实用例子:
    petalinux-package --boot --fsbl ./images/linux/zynq_fsbl.elf --fpga --u-boot
    说明:--fpga无默认路径,必须由用户指定其路径:例如:~/XXX.bit
    之后会在linux目录下生成BOOT.bin文件。

    3.3 打包预编译镜像-如何将新建的镜像打包到预编译目录

    petalinux-package --prebuilt --fpga

    3.4 使用预编译镜像来使用petalinux-boot命令

    petalinux-boot --qemu --prebuilt 3
    --qemu:代表在仿真下启动petalinux镜像
    --jtag:代表在硬件下启动petalinux镜像,根据自己需要选择,这里我们为了便于演示用qemu仿真
    3:代表启动等级,无特殊需求就填3,详情见UG114第34页

    3.5 在qemu中启动petalinux镜像(也就是之前编译的文件,上面第三步)

    petalinux-boot --qemu --prebuilt 3

    之后启动完毕后,登录名和密码都是root

    之后可以输入 cat /proc/version查看当前内核版本。

    退出QEMU: Ctrl+A ,松开,再按 x(小写的x)-若不成功,部分用户请先退出有道词典

    四、修改内核源码-创建属于自己的内核-这里以添加实时补丁为例

    4.1 给petalinux添加内核补丁的前提是找到内核源码位置

    路径:位于 基于bsp创建出来的一个工程里

    xilinx-zc702-2018.2/build/tmp/work-shared/zc702-zynq7/kernel-source

    4.2

    待续…………

    文章转载自: https://www.epubit.com/selfpublish/article/5268

    最新文章