PetaLinux常用命令汇总
创建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常用命令汇总的更多相关文章
- 20145222《信息安全系统设计基础》Linux常用命令汇总
学习Linux时常用命令汇总 通过Ctrl+f键可在该网页搜索到你想要的命令. Linux中命令格式为:command [options] [arguments] //中括号代表是可选的,即有些命令不 ...
- Oozie命令行常用命令汇总[转]
Oozie命令行常用命令汇总 有时候脚本跑多了就不愿意在OozieWeb端去看脚本的运行情况了.还好Oozie提供了很多命令行命令.能通过命令行直接检索自己想看到的脚本信息.在这里简单进行一下总结.一 ...
- vim常用命令汇总
vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...
- 【Linux】Linux 常用命令汇总
查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpk ...
- Docker笔记:常用命令汇总
Docker常用命令汇总 启动服务 [root@localhost ~]# service docker start Redirecting to /bin/systemctl start docke ...
- [svc][op]vim常用命令汇总
vim常用命令汇总: 定位 本行第一个字符 ctrl+$ 本行最后一个字符 0gg 文章首行 ctrl+G 文章行尾 u 撤销(Undo) 删除 D 从当前位置删除到行尾 ("d$" ...
- Linux&Android相关常用命令汇总记录
Linux&Android相关常用命令汇总记录 0@Linux&Android系统命令行下如何查看命令的帮助信息: command --help 1@在Linux系统中,设备分为三类, ...
- 【Ubuntu】常用命令汇总,整理ing
Ubuntu 常用命令(在此页面中Ctrl+F即可快速查找) 在Ubuntu系统使用过程中,会不断地接触到命令行操作,下面对一些常用的命令进行汇总,方便查找. 1.文件操作 1.1 文件复制拷贝 cp ...
- Linux常用命令汇总及使用方法(二)之文本编辑器VI
VI可能是在Linux中使用比较频繁的文本编辑器,如果不能熟练使用VI,在一定程度上会影响工作效率,所以在这里记录一下VI的常用命令及操作方式 在[root@test ~]# vi carrie.tx ...
- linux系统中日常运维常用命令汇总一
一.查看日志和机器相关信息常用命令 1.cat cat 命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往 ...
随机推荐
- MacOS安装和使用标注软件“labelImg”教程
原文发布于:https://blog.zhaoxuan.site/archives/16.html: 第一时间获取最新文章请关注博客个人站:https://blog.zhaoxuan.site. 简介 ...
- Ubuntu 20.04 安装和配置MySql5.7的详细教程
Ubuntu 20.04 安装和配置MySql5.7的详细教程 https://www.jb51.net/article/202399.htm
- 02. rails安装
rails安装 ruby 1.8.6 对应的rails是2.3.2 Ruby 1.8.7 或 1.9.2 对应的rails 2.3.x ruby1.9.3,对应的rails是3.2.12, ruby2 ...
- Linux中的find
find命令在硬盘上进行文件的查找,比起whereis与locate会比较耗时. 与时间有关的选项 在Linux当中一个文件有mtime,ctime,atime,find在搜索时可以配置这3种时间. ...
- AIRIOT物联网低代码平台如何配置Modbus RTU协议?
MBRTU即MODBUS RTU的简称,MODBUS是OSI模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信.平台的MBRTU协议是建立在TCP协议之上的 ...
- Linux搭建ES集群环境
搭建ES集群环境 准备 三台服务器 其中一台为主机节点 ES安装自行上传到各个节点home路径下并解压重命名 集群名称:cluster-big-data同一个集群多个节点,集群名称必须相同,节点名称不 ...
- Java中枚举类的深入理解
概述 在此之前由于个人在学习和开发中对枚举类的应用较少,所以对枚举类的知识点并没进行深入的了解,但最近写代码中突然想到了枚举类,抱着完善自身的知识的目的,就较为深入的了解了Java中的枚举类. 我在学 ...
- go强大的垃圾回收机制。
一.C语言中返回函数中局部变量值和指针(1) 在C语言中,一个函数可以直接返回函数中定义的局部变量,其实在函数返回后,局部变量是被系统自动回收的,因为局部变量是分配在栈空间,那为什么还可以返回局部变量 ...
- cmd /c和cmd /k 以及CMD命令
[转]cmd /c和cmd /kjava的Runtime.getRuntime().exec(commandStr)可以调用执行cmd指令. cmd /c dir 是执行完dir命令后关闭命令窗口. ...
- 【工作记录】JDBC连接MySQL,跨时区调查CST转Asia/Shangha
根据业务要求,不同的国家设置jvm参数,来确定当前时区. // -Duser.timezone=Asia/Kolkata 印度加尔各答 GMT+05:30 // -Duser.timezone=Asi ...