代码编织梦想

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中

在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_50128907/article/details/127121536

petalinux 编译,源码编译-爱代码爱编程

1. 测试环境 Ubuntu 16.04PetaLinux 2019.1PetaLinux 2019.1 ZCU106 BSPZCU1062. PetaLinux介绍 PetaLinux是Xilinx基于Yocto推出的Linux开发工具。Yocto是业界主流的Linux发行版的构建工具,它不仅可以从源代码编译Linux 内核,还可以编译Linux发行

zynpmp petalinux内核编译-爱代码爱编程

一、安装petalinux 参考: https://blog.csdn.net/lulugay/article/details/99715402 https://blog.csdn.net/m0_37340681/article/details/103685220 https://blog.csdn.net/u013793399/article/deta

petalinux如何保留u-boot和kernel源码-爱代码爱编程

Open Source Linux和UBoot 5.1. 保留Linux和UBoot源代码缺省情况下,PetaLinux在编译完成后会删除源代码,以节省硬盘空间。在project-spec/meta-user/conf/petalinuxbsp.conf里,添加如下内容,可以保留Linux和UBoot源代码。RM_WORK_EXCLUDE += “linu

zynq操作系统:petalinux的编译使用(上)官方推荐篇-爱代码爱编程

常规环境下petalinux的使用(xilinx官方推荐篇) 一.最小系统的构建 整个开发流程如下,不一定每一步都要执行。 通过 Vivado 创建硬件平台,得到 hdf 硬件描述文件;运行 source <petalinux 安装路径>/settings.sh,设置 Petalinux 运行环境(在安装篇已经设置了别名,可以相对简单了)

zynq操作系统:petalinux的编译使用(下)灵活编译篇1-爱代码爱编程

   上篇讲的官方推荐的编译方式,由于前面我们一直都是使用 xilinx 的 petalinux 工具编译镜像文件,例如包括 u-boot、 linux 内核、设备树、 ZYNQ PL 端的 bitstream 文件以及 fsbl 等,虽然 petalinux 功能上比较全面,但是在编译速度上太慢了,而且一旦hdf更换会带来整个工程的重新配置和编译,而且像

如何配置petalinux使用本地kernel、u-boot、rootfs-爱代码爱编程

文章目录 1. 配置petalinux工程1.1 导入vivado的hdf文件1.2 配置源码来源1.3 配置根文件系统类型为SD CARD2.配置设备树3. 编译petalinux工程4. 制作SD卡4.1 设置SD卡分区为2个4.2 格式化SD卡4.3 分区挂载4.4 将目标文件拷贝至两个分区 1. 配置petalinux工程 1.1 导

花旗linux 内核 如何调试,petalinux如何保留u-boot和kernel源码-爱代码爱编程

5. Open Source Linux和UBoot 5.1. 保留Linux和UBoot源代码 缺省情况下,PetaLinux在编译完成后会删除源代码,以节省硬盘空间。在project-spec/meta-user/conf/petalinuxbsp.conf里,添加如下内容,可以保留Linux和UBoot源代码。 RM_WORK_EXCLUDE

在linux中配置编译u-boot方法,petalinux编译自己下载的u-boot-爱代码爱编程

petalinux编译自己下载的u-boot 1. 新建工程目录,定位编译链,启动PetaLinux: cd program/ source /home/admin-hjj/PetaLinux/settings.sh 2. 新建petaLinux工程: petalinux-create --type project --template zy

linux系统下编译fpga工程,【工程师分享】整合Xilinx PetaLinux工程编译和Open Source U- Boot/Linux编译...-爱代码爱编程

5.1. 保留Linux和UBoot源代码 缺省情况下,PetaLinux在编译完成后会删除源代码,以节省硬盘空间。在project-spec/meta-user/conf/petalinuxbsp.conf里,添加如下内容,可以保留Linux和UBoot源代码。 RM_WORK_EXCLUDE += "linux-xlnx"RM_WORK_EXC

PetaLinux安装编译-爱代码爱编程

目录 PetaLinux安装编译1.安装petalinux2.编译petalinux3.生成BOOT文件4.简单程序a.运行helloworldb.gpio控制led PetaLinux安装编译 开发板:Xilinx Zynq XCZU9EG虚拟机:Ubuntu18.041.安装petalinux 安装依赖包,运行脚本st_env_setu

petalinux 使用外部代码 (u-boot)_alex-l的博客-爱代码爱编程

背景: 在petalinux编译工程时,我们可能有修改u-boot源码的需求,这时就需要我们使用外部的代码进行编译。 实现步骤: 在配置前,请确认我们已经在github上把对应的uboot源码已经下载下来了。 1、调出系统配置界面; //在工程目录下执行命令 petalinux-config 2、选择“Linux Components Selec

错误:some packages could not be installed._失眠的树亚的博客-爱代码爱编程

1.错误描述: // A code block Some packages could not be installed. This may mean that you have requested an impossibl

openhd改造实现廉价高清数字图传(树莓派+pc)—(五)gstreamer视频采集、传输和显示_hoopertsau的博客-爱代码爱编程

        图传的一个重要功能就是可以看视频。主要是采集树莓派zero摄像头的数据,经过编码打包,通过wifibroadcast发送到地面端的PC上,然后再通过解码显示出来。         这里用到了视频采集和编解码相关的软件。         在树莓派上,有自带的软件可以直接采集视频,很方便;地面端的解码可以使用gstreamer来做,因为涉及