1. 背景:

使用Petalinux构建linux系统,虽然便利,但是对于驱动开发不够灵活,且将rootfs与内核打包在一起,导致启动速度慢,因此:

  1. 将FPGA bit文件从BOOT.BIN分开

  2. image.ub文件分开为zImage和设备树

  3. 将rootfs放在EXT4分区

这样SD卡内容如下

  1. boot分区(fat分区):BOOT.BIN(FSBL + u-boot)、system.dtb、boot.scr、zImage、system.bit及APP

  2. rootfs(ext4分区):rootfs(驱动挂载在根文件系统目录下)

  3. 流程

  4. 创建Petalinux工程

    sptl

    petalinux-create -t project --template zynq -n MY_ZYNQ_PRJ

    cd MY_ZYNQ_PRJ

    petalinux-config --get-hw-description /<xsa location>

    注意:petalinux-config需要配置 Image Packaging Configuration --> Root filesystem type 为

    EXT4,即从EXT4分区挂载根文件系统

    打包BOOT.BIN

petalinux-build -c bootloader

petalinux-build -c u-boot

petalinux-package --boot --fsbl --u-boot --force

注意:对于Petalinux 21版本及以后版本:必须使用petalinux-package --boot --fsbl --u-boot --force命令构建BOOT.BIN,而不能加上--dtb no选项

原因如下:

2.2 生成boot.scr

petalinux-build //

修改boot.scr,详细见《正点原子领航者ZYNQ之嵌入式Linux开发指南》

主要是从image.ub改为zImage启动内核、添加system.bit启动

注意:编译boot.scr文件,需要使用u-boot-tools工具,使用

sudo apt install u-boot-tools安装

2.3 编译内核

我这里使用的linux内核版本为v5.15_2022,

具体流程同《正点原子领航者ZYNQ之嵌入式Linux开发指南》,

2.4 编译根文件系统

petalinux-config -c rootfs
petalinux-build -c rootfs
sudo tar -xzf rootfs.tar.gz -C /media/rootfs //将根文件系统压缩包解压至SD卡 ext4分区

2.5 启动开发板

将文件拷贝只SD卡:

  1. boot分区(fat分区):BOOT.BIN(FSBL + u-boot)、system.dtb、boot.scr、zImage、system.bit及APP

  2. rootfs(ext4分区):rootfs(驱动挂载在根文件系统目录下)

启动开发板,进入系统

  1. 驱动开发遇到的问题

    1. 驱动编译,报错:<linux/ide.h> :no such file

    是因为我采用linux5.15版本内核编译,在5.14版本后,删除了<ide.h>,可以使用libata相关库替代

改为<linux/libata.h>就不报错了

使用Petalinux2022搭建ZYNQ系统镜像问题记录的更多相关文章

  1. ZYNQ的Linux Linaro系统镜像制作SD卡启动

    ZYNQ的Linux Linaro系统镜像制作SD卡启动 0. 概述 ZYNQ生成uboot的时候和正常的ARM设备不太一样,ZYNQ属于二次辅助启动uboot然后由uboot启动内核,大概意思就是 ...

  2. 初涉定制linux系统之——自动化安装Centos系统镜像制作

    最近碰到个需求:要在内网环境安装centos6.5系统并搭建服务,但由于自动部署脚本里安装依赖包使用的是yum安装,而服务器无法连接外网,实施人员也不会本地yum源搭建O__O "….. 本 ...

  3. 实战 Prometheus 搭建监控系统

    实战 Prometheus 搭建监控系统 Prometheus 是一款基于时序数据库的开源监控告警系统,说起 Prometheus 则不得不提 SoundCloud,这是一个在线音乐分享的平台,类似于 ...

  4. 按照Enterprise Integration Pattern搭建服务系统

    在前一篇文章中,我们已经对Enterprise Integration Pattern中所包含的各个组成进行了简单地介绍.限于篇幅(20页Word以内),我并没有深入地讨论各个组成.但是如果要真正地按 ...

  5. ELK+FileBeat+Log4Net搭建日志系统

    ELK+FileBeat+Log4Net搭建日志系统 来源:https://www.zybuluo.com/muyanfeixiang/note/608470 标签(空格分隔): ELK Log4Ne ...

  6. 搭建本地Ubuntu 镜像服务器

    一.需求分析 最近公司软件Team 有个需求是这样的:能不能在局域网搭建一个Ubuntu 镜像服务器, 这样作的好处是可以节省Ubuntu某些常用工具的安装时间. 二.部署过程 2.1 测试环境 目前 ...

  7. 如何使用win7自带的备份还原以及创建系统镜像------傻瓜式教程

    对于经常鼓捣电脑的童鞋来说,装系统是一件极其平常的事情,不过系统装多了之后,我们会感到比较烦躁,因为每一次装系统意味着驱动的重新安装,程序的重新安装,每次这么鼓捣几次,半天时间就花在这上面了,效率是在 ...

  8. 第三篇——第二部分——第二文 计划搭建SQL Server镜像

    原文:第三篇--第二部分--第二文 计划搭建SQL Server镜像 本文紧跟上一章:SQL Server镜像简介 本文出处:http://blog.csdn.net/dba_huangzj/arti ...

  9. 关于IP核中中断信号的使用---以zynq系统为例

    关于IP核中中断信号的使用---以zynq系统为例 1.使能设备的中断输出信号 2.使能处理器的中断接收信号 3.连接IP核到处理器之间的中断 此处只是硬件的搭建,软件系统的编写需要进一步研究. 搭建 ...

  10. 搭建Harbor私有镜像仓库--v1.5.1

     搭建Harbor私有镜像仓库--v1.5.1 1.介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境 ...

随机推荐

  1. STM32真的是很落后吗?

    STM32真的是很落后吗? 作为一名嵌入式开发老兵,我不止一次听到有人说"STM32已经过时了",尤其是那些刚入门或者看了几篇文章的新手.每当听到这样的言论,我都忍不住想笑,但又有 ...

  2. 异步编程与Tortoise-ORM框架

    title: 异步编程与Tortoise-ORM框架 date: 2025/04/19 00:13:05 updated: 2025/04/19 00:13:05 author: cmdragon e ...

  3. DP刷题总结-2

    同步于Luogu blog T1 AT_joisc2007_buildi ビルの飾り付け (Building) 简化题意 最长上升子序列模板 分析 \(O(n^2)\)做法 考虑DP 定义状态:\(d ...

  4. 代码随想录第十一天 | Leecode 150. 逆波兰表达式求值、239. 滑动窗口最大值、347. 前k个高频词

    Leecode 150. 逆波兰表达式求值 题目链接:https://leetcode.cn/problems/evaluate-reverse-polish-notation/description ...

  5. 参考用例之“本地Excel导入系统测试方案”

    本地Excel导入系统测试方案 Excel 代码 @Test public void importperson() throws FileNotFoundException { FileInputSt ...

  6. 神经网络-反向传播BP算法推导

    还是用前向算法的图, 然后仔细一看分类输出, 发现好像错了, 这该如何去反向修改权值呢? 因其是网络结构, 改变一点, 必然会引起一连串的改动, 这个过程, 如何来描述呢? 数学推导 声明变量 首先, ...

  7. 如何用IDEA 生成JavaDoc新版

    用IDEA生成JavaDoc 左上角四横杠点击,唤出工具栏(快捷键 alt+\) 左键单击工具选项 下拉框选 生成Javadoc 在弹出框选好参数立刻导出啦 1.JavaDoc 作用域: 选要导出的文 ...

  8. 市盈率指标EP在A股市场的分析

    因子经济金融特性 EP因子即市盈率因子,常被投资者使用的几个估值因子之一.一般使用PE,即Price to Earning, 维基百科上的解释:市盈率指每股市价除以每股盈利(Earning Per S ...

  9. 异步之舞:FastAPI与MongoDB的极致性能优化之旅

    title: 异步之舞:FastAPI与MongoDB的极致性能优化之旅 date: 2025/05/23 21:55:11 updated: 2025/05/23 21:55:11 author: ...

  10. 【公众号搬运】React-Native开发鸿蒙NEXT

    .markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rg ...