petalinux 从0开始构建自己目标板的操作系统

petalinux 从0开始构建自己目标板的操作系统

平台:zynq zcu9eg
工具:vivado2019.1 petalinux2019.1

vivado生成HDF

在这里插入图片描述
在vivado中新建工程 ,在bd里面,构建自己的工程,zynq要按照自己的板子的硬件进行配置,生产HDF文件,供petalinux使用,这部比较简单,相信应该都会。

petalinux构建操作系统

1.新建工程
petalinux-create --type project --template <PLATFORM> --name <PROJECT_NAME>
eg:petalinux-create --type project --template zynqMP --name zcu9eg_linux
  • PLATFORM可以是zynqMP(用于UltraScale+ MPSoC)、zynq(用于Zynq-7000)、microblaze(用于MicroBlaze CPUs)
  • 该命令会从一个默认的模板创建一个新的PetaLinux工程文件夹
2.导入HDF

进入到工程的目录,输入指令:

petalinux-config --get-hw-description=<path-to-hdf/dsa-directory>

确保Subsystem AUTO Hardware Settings被选择,该菜单允许定制系统范围的硬件设置,进入该菜单:

   Subsystem AUTO Hardware Settings
   System Processor (psu_cortexa53_0) --->
   Memory Settings --->
   Serial Settings --->
   Ethernet Settings --->
   Flash Settings --->
   SD/SDIO Settings --->
   RTC Settings --->
[*]Advanced bootable images storage Settings --->

这一步中工具会分析硬件描述文件,得到所需要的硬件描述信息来更新设备树PetaLinux U-Boot配置文件内核配置文件,基于“Auto Config Settings”和“Subsystem AUTO Hardware Settings”设置。例如,当ps7_ethernet_0被选作Primary Ethernet时,并且对kernel config和U-Boot config开启了自动更新时,工具会自动使能其内核驱动并更新U-Boot配置头文件以使用选择的以太网控制器


这一步要根据自己的板子的硬件做相应的修改,例如我们的板子的设置如下;
在这里插入图片描述
SD卡要改成SD1(因为我们的板子是SD1为SD卡,SD0为EMMC)
在这里插入图片描述
在Yocto Setting中按‘S’选中Enable Debug Tweaks,就不用登录直接进入系统。


3.编译u-boot

终端输入:

petalinux-config -c u-boot

然后等待GUI出来,这里暂时不改动配置,直接save(save为u-boot.config,名字随便取但不要留空),然后继续等(新建的工程时间会长一点)。
在这里插入图片描述

4.编译kernel

终端输入:

petalinux-config -c kernel

然后等待GUI出来,这里暂时不改动配置,直接save(save为kernel.config,名字随便取但不要留空),然后继续等。
在这里插入图片描述

4.build
petalinux-build
5.生成镜像
petalinux-package --boot --format BIN --fsbl images/linux/zynqmp_fsbl.elf --u-boot images/linux/u-boot.elf --pmufw images/linux/pmufw.elf --fpga images/linux/*.bit --force
启动如下

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值