Petalinux工具编译生成boot和kernel等流程

Petalinux工具编译生成boot和kernel等流程

简述:使用petalinux工具生成系统文件UBOOT.BIN和image.ub等。
1.进入/zynq/目录设置petalinux环境(petalinux已经安装好)
$source /opt/pkg/petalinux/settings.sh
$petalinux-util --webtalk off
2.设置ubuntu环境变量
2.1当前用户临时起作用
e x p o r t P A T H = export PATH= exportPATH=PATH:/opt/pkg/petalinux/tools/common/petalinux/bin/
2.2对所有用户生效且永久
sudo vi /etc/profile
在最后一行增加语句:
export PATH=$PATH:/opt/pkg/petalinux/tools/common/petalinux/bin/
保存退出
马上生效:source /etc/profile
2.3对当前用户永久生效
修改~/.bashrc文件,操作如上
2.4对当前用户永久生效
修改~/.bash_profile,操作如上
3.创建工程文件
$petalinux-create --type project --template zynq --name project_name
进入工程文件夹
cd project_name
在这里插入图片描述

4.导入硬件hdf文件进行配置
.hdf文件由vivado和sdk软件导出
$petalinux-config --get-hw-description=.hdf文件所在目录
进行以下配置(u-boot、kernel、serial一定要去查看)
在这里插入图片描述
在这里插入图片描述

uboot本地路径:
/petalinux-v2017.2-open_components/components/u-boot-plnx
此目录下的./drivers/mtd/spi/spi_flash_ids.c文件修改过,为了适应SPI_ID
uboot启动参数设置:可以在里面配置部分参数
u-boot-plnx/include/configs/ platform-auto.h:
/工程名/project-spec/meta-plnx-generated/recipes-bsp/u-boot/configs/platform-auto.h
在这里插入图片描述

kernel本地路径:
petalinux-v2017.2-open_components/components/xlnx-4.9
此路径下的./drivers/mtd/spi-nor/spi-nor.c文件修改过,为了适配SPI_ID
在这里插入图片描述
在这里插入图片描述

串口配置(必须看)
在这里插入图片描述

Flash分区(默认)
在这里插入图片描述
在这里插入图片描述

0x0-0x500000 : “boot”
0x500000-0x520000 : “bootenv”
0x520000-0xfa0000 : “kernel”
tftp配置
在这里插入图片描述

Save后退出,出现以下打印则为正确。
在这里插入图片描述

5.配置uboot(一般保持默认配置)
petalinux-config -c u-boot
6.配置kernel(一般保持默认配置)
petalinux-config -c kernel
支持一些MTD、使能ubi、ubifs等
7.配置文件系统(一般保持默认配置)
petalinux-config -c rootfs
配置一些基础库和工具链(部分需要联网)
8.修改设备树文件(根据原理图、驱动需求修改)
设备树简称DT,是用来描述硬件的数据结构。它可以由操作系统如linux读取,这样可以将操作系统与机器硬件分离,而不必对机器对机器硬件的细节进行硬编码。
linux使用DT的基本功能包括:平台识别、运行时配置(如boottargs)和设备节点填充。
/zynq/xc7z045/project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi

9.编译全部亦可单独编译
petalinux-build
petalinux-build -c u-boot/kernel/rootfs
在这里插入图片描述

10.打包成BOOT.BIN文件
petalinux-package --boot --fsbl /zynq/xc7z045/images/linux/zynq_fsbl.elf --u-boot --fpga /zynq/xc7z045/images/linux/z7045_wrapper.bit --kernel --force
此处不需要–fpga /zynq/xc7z045/images/linux/z7045_wrapper.bit(文件过大,打包失败)
使用命令:
petalinux-package --boot --fsbl /zynq/xc7z045/images/linux/zynq_fsbl.elf --u-boot --kernel --force
在这里插入图片描述

11.测试
petalinux模拟器运行u-boot\kernel

petalinux-boot --qemu --prebuilt 2

petalinux-boot --qemu --prebuilt 3 (上一版本运行成功) ctrl +A 放开后再按X退出
12.通过SDK工具烧录
先将打包的BOOT.BIN文件拷贝到共享文件夹中,然后进行烧录。

压缩bitstream文件Vivado操作
1.点击IMPLEMENTATION->Open Implemented Design
在这里插入图片描述

2.Tools->Setting->Bitstream
Configure additional bitstream settings.
在这里插入图片描述

3.修改Enable Bitstream Compression为TRUE,保存到约束文件.xdc中

在这里插入图片描述

  • 6
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

茶包不是trouble

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

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

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

打赏作者

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

抵扣说明:

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

余额充值