创建petalinux工程

Create a new project from a reference BSP file.

用于从官方下载的BSP中抽取数据产生工程。

petalinux-create -t project -s <FULLPATH-TO-BSP>

Create a new project based on the MicroBlaze template.

用于让petalinux工具包,从系统中抽取模板,产生工程。

$ petalinux-create -t project -n <PRJ_NAME> --template microblaze

Initialize a PetaLinux project within the project directory with an external HDF.

用于指定一个位于工程目录之外的包含HDF的文件夹用于搜索。

petalinux-config --get-hw-description=<PATH-TO-HDF-DIRECTORY>

Initialize a PetaLinux project from within the directory containing an HDF.

用于指定一个petalinux工程目录。在工程目录的子目录中,搜索存放HDF文件。

petalinux-config --get-hw-description -p <%PATH-TO-PETALINUX-PROJECT%>

Initialize a PetaLinux project from a neutral location

用于指定一个petalinux工程目录。并指定一个单独的HDF文件。

petalinux-config --get-hw-description <%PATH-TO-HDF%> -p <%PATH-TO-PETALINUX-PROJECT%>

配置

Start the menuconfig for the system-level configuration:

开始 系统级别的 menuconfig:

$ petalinux-config

Parse the configuration onto Kconfig without opening the GUI(--oldconfig), for the root filesystem(-c rootfs):

无GUI配置组件。

# 以根文件系统为例
petalinux-config -c rootfs --oldconfig

Load the Linux kernel configuration with a specific default configuration:

以指定的配置文件对组件进行配置:

注意,这样的配置文件需要存在于kernel或者uboot的源码树中,不能额外指定外部文件。

否则会报错:ERROR: linux-xlnx-4.14-xilinx-v2018.3+gitAUTOINC+eeab73d120-r0 do_kernel_metadata: A KBUILD_DEFCONFIG 'xxx' was specified, but not present in the source tree

# 以内核为例
petalinux-config -c kernel --defconfig xilinx_zynq_base_trd_defconfig # 以 uboot 为例
petalinux-config -c u-boot --defconfig xilinx_zynqmp_zcu102_defconfig

Generate the source code for fsbl/fs-boot:

生成源码(以fsbl/fs-boot为例)。

petalinux-config -c bootloader

构建

Build the entire PetaLinux project

构建整个PetaLinux工程

petalinux-build

Build the kernel forcefully

强制构建内核

petalinux-build -c kernel -f

Compile a kernel forcefully

强制编译内核

petalinux-build -c kernel -x compile -f

Clean all build collaterals from the U-Boot component of the PetaLinux project.

清理构建中间组件

$ petalinux-build -c u-boot -x cleansstate

Create an updated FIT image from the current contents of the deploy area.

从部署域的当前内容创建更新的FIT映像。

petalinux-build -x package

清理

Clean all build collaterals. It removes build/, ${TMPDIR} and images. This will bring the

project to its initial state

## 慎用
petalinux-build -x mrproper

Clear the build area of the PetaLinux project for archiving as a BSP or for revision

control. This example retains the images directory of the project

petalinux-build -x distclean

烧录

Download and boot a pre-built bitstream (and FSBL for Zynq-7000 or Zynq UltraScale+

MPSoC) via JTAG to a physical board.

petalinux-boot --jtag --prebuilt 1

Download and boot a pre-built U-Boot elf via JTAG to a physical board.

$ petalinux-boot --jtag --prebuilt 2

For Zynq-7000, it downloads:

  • bitstream pre-built/linux/implementation/download.bit
  • fsbl pre-built/linux/images/zynq_fsbl.elf
  • u-boot pre-built/linux/images/u-boot.elf

For Zynq UltraScale+ MPSoC, it downloads:

  • bitstream pre-built/linux/implementation/download.bit
  • fsbl pre-built/linux/images/zynqmp_fsbl.elf
  • ATF pre-built/linux/images/bl31.elf
  • u-boot pre-built/linux/images/u-boot.elf
  • pmufw pre-built/linux/images/pmufw.elf

Download and boot a pre-built kernel image via JTAG to a physical board

petalinux-boot --jtag --prebuilt 3

For Zynq-7000, it downloads:

  • bitstream pre-built/linux/implementation/download.bit
  • fsbl pre-built/linux/images/zynq_fsbl.elf
  • DTB pre-built/linux/images/system.dtb
  • kernel pre-built/linux/images/zImage

For Zynq UltraScale+ MPSoC, it downloads:

- bitstream pre-built/linux/implementation/download.bit
- fsbl pre-built/linux/images/zynqmp_fsbl.elf
- kernel pre-built/linux/images/Image
- DTB pre-built/linux/images/system.dtb
- ATF pre-built/linux/images/bl31.elf
- pmufw pre-built/linux/images/pmufw.elf)

Download and boot a built U-Boot image via JTAG to a physical board

petalinux-boot --jtag --u-boot

For Zynq-7000, it downloads:

  • fsbl images/linux/zynq_fsbl.elf
  • U-Boot images/linux/u-boot.elf.

For Zynq UltraScale+ MPSoC, it downloads:

  • fsbl images/linux/zynqmp_fsbl.elf
  • U-Boot images/linux/u-boot.elf
  • ATF images/linux/bl31.elf
  • pmufw images/linux/pmufw.elf

Download and boot a built kernel image via JTAG to a physical board.

petalinux-boot --jtag --kernel

(For Zynq-7000, it boots:

  • fsbl images/linux/zynq_fsbl.elf
  • DTB images/linux/system.dtb
  • kernel images/linux/zImage

For Zynq UltraScale+ MPSoC, it boots:

  • fsbl images/linux/zynqmp_fsbl.elf
  • kernel images/linux/Image
  • DTB images/linux/system.dtb
  • ATF images/linux/bl31.elf
  • pmufw images/linux/pmufw.elf

启动

Load and boot a pre-built U-Boot elf via QEMU.

$ petalinux-boot --qemu --prebuilt 2

Load and boot a pre-built U-Boot elf via QEMU in root mode.

$ petalinux-boot --qemu --root --prebuilt 2

打包

Create a BOOT.BIN file for a Zynq family device (including Zynq-7000 and Zynq UltraScale+ MPSoC).

petalinux-package --boot --format BIN --fsbl <%PATH-TO-FSBL%> --u-boot -o  <%PATH-TO-OUTPUT-WITH-FILE-NAME%>

Create a BOOT.BIN file for a Zynq family device that includes a PL bitstream and FIT image.

petalinux-package --boot --format BIN --fsbl <%PATH-TO-FSBL%>  --u-boot --fpga <%PATH-TO-BITSTREAM%> --kernel -o  <%PATH-TO-OUTPUT%>

Create a BOOT.BIN file for a Zynq UltraScale+ MPSoC device that includes a PMU firmware.

petalinux-package --boot --u-boot --kernel --pmufw <%PATH_TO_PMUFW%>

Clean the project and then generate the BSP installation image (.BSP file)

petalinux-package --bsp --clean -o <%PATH-TO-BSP%> -p <%PATH-TO-PROJECT%>

Generate the BSP installation image that includes a reference hardware definition

petalinux-package --bsp --hwsource <%PATH-TO-HW-EXPORT%> -o <%PATH-TO-BSP%> -p <%PATH-TO-PROJECT%>

Generate the BSP installation image from a neutral location

$ petalinux-package --bsp -p <%PATH-TO-PROJECT%> -o <%PATH-TO-BSP%>

Generate uImage

petalinux-package --image -c kernel --format uImage
(The uImage is in <%plnx-proj-root%>/images/linux directory)

Include a specific bitstream in the pre-built area.

petalinux-package --prebuilt --fpga <%BITSTREAM%>

Include a specific data file in the pre-built area.

petalinux-package --prebuilt -a <%APP%>:images/<%APP%>

其他

Launch the GNU GDB debugger

petalinux-util --gdb

Launch a specific Linux kernel image.

petalinux-util --jtag-logbuf -i <%PATH-TO-IMAGE%>

Launch the JTAG logger from a neutral location. This workflow is for Zynq-7000 devices only

petalinux-util --jtag-logbuf -i <%PATH-TO-IMAGE%> -p <%PATH-TO-PROJECT%>

To find the default bitstream of a project:

petalinux-util --find-hdf-bitstream

To find the bitstream of a hdf:

petalinux-util --find-hdf-bitstream --hdf-file <%path to hdf file%>

Toggle the WebTalk feature off.

petalinux-util --webtalk off

PetaLinux常用命令汇总的更多相关文章

  1. 20145222《信息安全系统设计基础》Linux常用命令汇总

    学习Linux时常用命令汇总 通过Ctrl+f键可在该网页搜索到你想要的命令. Linux中命令格式为:command [options] [arguments] //中括号代表是可选的,即有些命令不 ...

  2. Oozie命令行常用命令汇总[转]

    Oozie命令行常用命令汇总 有时候脚本跑多了就不愿意在OozieWeb端去看脚本的运行情况了.还好Oozie提供了很多命令行命令.能通过命令行直接检索自己想看到的脚本信息.在这里简单进行一下总结.一 ...

  3. vim常用命令汇总

    vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...

  4. 【Linux】Linux 常用命令汇总

    查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpk ...

  5. Docker笔记:常用命令汇总

    Docker常用命令汇总 启动服务 [root@localhost ~]# service docker start Redirecting to /bin/systemctl start docke ...

  6. [svc][op]vim常用命令汇总

    vim常用命令汇总: 定位 本行第一个字符 ctrl+$ 本行最后一个字符 0gg 文章首行 ctrl+G 文章行尾 u 撤销(Undo) 删除 D 从当前位置删除到行尾 ("d$" ...

  7. Linux&Android相关常用命令汇总记录

    Linux&Android相关常用命令汇总记录 0@Linux&Android系统命令行下如何查看命令的帮助信息: command --help 1@在Linux系统中,设备分为三类, ...

  8. 【Ubuntu】常用命令汇总,整理ing

    Ubuntu 常用命令(在此页面中Ctrl+F即可快速查找) 在Ubuntu系统使用过程中,会不断地接触到命令行操作,下面对一些常用的命令进行汇总,方便查找. 1.文件操作 1.1 文件复制拷贝 cp ...

  9. Linux常用命令汇总及使用方法(二)之文本编辑器VI

    VI可能是在Linux中使用比较频繁的文本编辑器,如果不能熟练使用VI,在一定程度上会影响工作效率,所以在这里记录一下VI的常用命令及操作方式 在[root@test ~]# vi carrie.tx ...

  10. linux系统中日常运维常用命令汇总一

    一.查看日志和机器相关信息常用命令 1.cat cat 命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往 ...

随机推荐

  1. ADOBE FORM的一些相关资料

    虽然很多人觉得打印程序的开发很无聊(我也这么想),但在实际工作中,打印算是比较有意义的工作,所以还是值得学习的. 之前翻译过几篇Adobe Form的文章,其中的内容,可以帮助创建一些简单的打印示例, ...

  2. Flink Forward #Asia2020 流批一体及数仓资料整理

    阿里云实时计算负责人 - 王峰(莫问)/ FFA_2020-Flink as a Unified Engine - Now and Next-V4 2020年Flink 基于Flink 的流批一体数仓 ...

  3. 【Python基础】两个参数的for循环步长写法

    一个参数for循环步长写法 >>> for i in range(1,10000,1000):print(i) ... 1 1001 2001 3001 4001 5001 6001 ...

  4. 特工17Agent17汉化版游戏破解金币方法修改破解金币的增加方法

    又是一个renpy游戏,昨晚搞了半个小时搞定的,其实这个游戏要赚钱也不难,就是点点点就可以了,但是我觉得还是挺费劲的,因为好多道具都很贵,攒钱又不怎么容易,花钱的地方还挺多的,所以干脆不如直接破解了算 ...

  5. 05. gem使用手册

    https://www.jianshu.com/p/ced2793bfde4?utm_campaign=maleskine&utm_content=note&utm_medium=se ...

  6. 10分钟了解Flink SQL使用

    Flink 是一个流处理和批处理统一的大数据框架,专门为高吞吐量和低延迟而设计.开发者可以使用SQL进行流批统一处理,大大简化了数据处理的复杂性.本文将介绍Flink SQL的基本原理.使用方法.流批 ...

  7. selenium 滚动截图参考

    Selenium本身并不直接支持滚动截图,但是你可以通过编程方式实现滚动截图.下面是一个Python的例子,使用Selenium和PIL库实现滚动截图: from selenium import we ...

  8. java 反射——任意类型数组扩容

    //java object[]无法转换为原对象类型,可以使用反射来做. //这里的参数不是传object[] 而是传object. public Object GoodArrayGrow(Object ...

  9. golang 怎样防止结构体对象被拷贝

    主要实现Lock以及Unlock就可以了 此时使用go vet mian.go 检查就会提示我们./main1.go:25:7: assignment copies lock value to b: ...

  10. openssl升级nginx升级支持openssl http2

    mkdir -p /usr/local/openssl #wget https://www.openssl.org/source/openssl-1.1.1d.tar.gz tar -xf opens ...