当前位置: 首页 > news >正文

petalinux环境下给linux-xlnx源码打补丁

        在调试88e1512芯片时官方驱动无法满足我的应用方式,因此修改了marvell.c源码,但是在做bsp包重新创建新工程时发现之前的修改没有生效,因此查找了一下资料发现可以通过打补丁的方式添加到工程文件中,便于管理。

操作步骤

一、获取linux-xlnx源码

使用petalinux-devtool modify linux-xlnx 命令可以获取源码,路径为:./project/components/yocto/workspace/sources/linux-xlnx

二、操作步骤

1. 生成补丁文件

# 进入源码目录(以 Linux 内核为例)
cd ./project/components/yocto/workspace/sources/linux-xlnx

# 生成补丁(基于 Git)
git diff > marvell.patch

2. 创建补丁存放目录

在 PetaLinux 工程的 project-spec/meta-user 层中创建补丁路径:

# 创建内核补丁目录
mkdir -p project-spec/meta-user/recipes-kernel/linux/linux-xlnx/files

3. 复制补丁文件

将生成的补丁文件复制到目标路径:

cp marvell.patch project-spec/meta-user/recipes-kernel/linux/linux-xlnx/files

4. 创建或修改配方文件

通过 .bbappend 文件指定补丁:

# 创建配方追加文件
vi project-spec/meta-user/recipes-kernel/linux/linux-xlnx_%.bbappend

文件内容:

# 指定补丁文件
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
SRC_URI += "file://marvell.patch"

5. 重新构建工程

petalinux-build -c kernel  # 仅构建内核
petalinux-build          # 构建完整镜像

6. 测试验证完成后终止开发模式清理构建缓存并重新构建工程

petalinux-devtool reset linux-xlnx 

petalinux-build -c kernel -x cleansstate

petalinux-build -c kernel

相关文章:

  • 重学vue3:vue3组件通信的几种方法
  • OpenAI新工具助力开发者:AI智能体自动任务创建的艺术
  • 基于DeepSeek的智能数据分析和自动化处理系统:引领BI行业新变革
  • redis的持久化
  • 详解 C++ 左值和右值对象 左值引用和右值引用
  • RabbitMQ报错:Shutdown Signal channel error; protocol method
  • 微信小程序-实现锚点跳转,页面加载后自动跳转、点击跳转到指定位置
  • ubuntu 设置允许root远程登录
  • c语言笔记 静态函数和递归函数
  • 基于PyTorch通信算子的分布式训练阻塞定位方法
  • emacs使用mongosh的方便工具发布
  • 为什么 JPA 可以通过 findByNameContaining 自动生成 SQL 语句?
  • The First项目报告:重塑 DeFi 流动性的革新者,ELX 即将登陆 The First
  • Vue 系列之:路由
  • 玩转python:通俗易懂掌握高级数据结构:collections模块之namedtuple
  • 【附JS、Python、C++题解】Leetcode面试150题(9)——三数之和
  • C语言基础知识04
  • 2025-03-10 学习记录--C/C++-PTA 习题11-4 字符串的连接
  • Mysql_DML
  • java中如何把json转化的字符串再转化成json格式
  • 北京怎样做企业网站/百度免费
  • 改行做网站/app接入广告变现
  • 江苏网站建设哪家快点/新媒体运营工作是什么
  • 微网站设计与开发竞赛/seo营销优化
  • 做网站代码用什么软件/bt kitty磁力猫
  • 域名网址/超级seo外链