petalinux初学者-使用教程-快速入门

举报
feichaiyu 发表于 2019/10/15 11:07:55 2019/10/15
【摘要】 一、设计流程步骤如下: 先去官网下载一个对应的bsp包,如果没有,可以自定义工程,自己建自己的项目,在开始阶段,先用bsp熟悉一下开发流程:我这里下的是zc702 的bsp板级支持包。bsp下载地址首先安装bsp包到自己想建立工程的目录下:后面的bsp包根据自己需要填写bsp路径,我已进入到bsp的同级目录下了。petalinux-create -t project -s xilinx-zc...

一、设计流程步骤如下: 

1.png

先去官网下载一个对应的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.png

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

到此为止,初步设计已经完成!后面就是功能模块的添加了



本文转载自异步社区。

文链接:https://www.epubit.com/articleDetails?id=N1895fd26-4fcd-42e1-993b-600fa19a1f0b

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。