【ZYNQ】简单几步,教你使用 Petalinux 定制 Linux

简介: 【ZYNQ】简单几步,教你使用 Petalinux 定制 Linux

测试平台:黑金 Zynq7035 开发板

芯片型号:XC7Z035-2FFG676I

开发环境:Ubuntu 16.04

开发工具:Petalinux 2017.4


Step1 创建 Petalinux 工程

1.1 将 Vivado 工程目录下*.sdk文件夹中的*.hdf文件复制到新建的proj文件夹中

1.2 在当前文件夹下进入终端,配置 Vivado 和 Petalinux 环境变量

source /opt/pkg/petalinux/settings.sh
source /opt/Xilinx/Vivado/2017.4/settings64.sh

1.3 创建 Petalinux 工程,工程名为platform_peta

petalinux-create --type project --template zynq --name platform_peta

1.4 进入 petalinux 工作目录

cd platform_peta

1.5 配置 petalinux 工程的硬件信息,/home/zcc/my/proj*.hdf文件所在目录

petalinux-config --get-hw-description /home/zcc/my/proj

1.6 弹出 petalinux 工程配置窗口

1.7 Linux Components Selection 选项可以配置 uboot 和 Linux 内核来源,默认从 git 上下载,这里选用本地内核文件,进入Linux Components Selection→linux-kernel (linux-xlnx),选中ext-local-src

1.8 选择External linux-kernel local source settings→EXternal linux-kernel local source path,填写本地 Linux 内核源码的绝对路径

1.9 保存并退出,等待编译结束


若想再次配置 petalinux 工程,可使用petalinux-config命令再次配置

Step2 配置 linux 内核

2.1 执行配置 Linux 内核命令

petalinux-config -c kernel

2.2 一段时间后弹出内核配置界面

2.3 配置以太网 phy 芯片驱动,选中Device Drivers→Network device support→PHY Device support and infrastructure→Micrel PHYs

2.4 按需配置其他相关驱动,配置完成后保存并退出,等待编译结束


Step3 配置根文件系统

执行配置根文件系统命令,这里保持默认

petalinux-config -c roofs


Step4 编译 petalinux 工程

4.1 配置编译 uboot、内核、根文件系统、设备树等

petalinux-config -build


4.2 生成 BOOT 文件

petalinux-package --boot --fsbl ./images/linux/zynq_fsbl.elf --fpga ./images/linux/top.bit --u-boot --force


4.3 复制BOOT.biniamge.ub到 SD 卡中。

Step5 板载测试

将 SD 卡插入板卡,设置 SD 启动模式,这里使用 PuTTY 查看日志输出

5.1 启动板卡


5.2 Success!

OK! You’ve learned!

相关文章
|
18天前
|
Linux 内存技术 Perl
【ZYNQ】制作从 QSPI Flash 启动 Linux 的启动文件
【ZYNQ】制作从 QSPI Flash 启动 Linux 的启动文件
|
Linux 测试技术 API
zynq操作系统: Linux下异步通知的应用
在使用阻塞或者非阻塞的方式来读取驱动中某些值都是应用程序主动读取的,对于非阻塞方式来说还需要应用程序通过 poll 函数不断的轮询。最好的方式就是驱动程序能主动向应用程序发出通知,报告自己可以访问,然后应用程序在从驱动程序中读取或写入数据。 Linux 提供了异步通知这个机制来完成此功能
177 0
|
Linux
zynq操作系统: Linux下Misc设备的添加应用
Misc 的意思是混合、杂项的,因此misc设备也叫做杂项设备(杂散设备)
146 0
|
Linux 测试技术 芯片
|
存储 Ubuntu 安全
|
Linux 开发工具
|
Linux
zynq操作系统: Linux驱动开发串口波特率 非标准波特率 10mb
zynq操作系统: Linux驱动开发串口波特率 非标准波特率 10mb
417 0
zynq操作系统: Linux驱动开发串口波特率 非标准波特率 10mb
|
Linux 开发者 Perl
zynq操作系统:Linux驱动开发AXIDMA补充篇 多路DMA
Linux驱动开发AXIDMA补充篇 多路DMA
967 0
|
存储 Linux 内存技术
|
11天前
|
Shell Linux 程序员
【Linux】Shell 命令以及运行原理
【Linux】Shell 命令以及运行原理