在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在Petalinux下Patch u-boot源碼

XILINX開發者社區 ? 來源: XILINX開發者社區 ? 2024-12-04 16:26 ? 次閱讀

本文作者:AMD 工程師Chao Zhang

在軟件開發過程中我們經常遇到用 Patch 來傳遞和更新代碼的場景。本文以一個端到端的例子來演示在 Petalinux 使用過程中,如何給 u-boot 的源碼生成 Patch 并在 Petalinux 中編譯。

操作系統:Ubuntu 18.04

工具:Petalinux 2020.2

開發板:ZCU102 Rev 1.0

源碼:https://github.com/Xilinx/u-boot-xlnx

目標:出于演示目的,我們將修改 u-boot/cmd/bdinfo.c 文件,在 bdinfo 命令中加入一段打印,最終通過上板執行 bdinfo 命令來驗證效果。

生成 Patch

首先 clone u-boot 源碼到本地,切換到 Petalinux 2020.2 對應的 u-boot 分支。可從 Petalinux 2020.2 release notes

中查找對應的 u-boot 源碼 branch 和 tag 信息。

https://www.xilinx.com/support/answers/75775.html

接下來使用任何你喜歡的編輯器修改 u-boot/cmd/bdinfo.c 代碼,在 do_bdinfo 函數體中加入最后幾句打印信息,具體如下:

0635db80-ad88-11ef-93f3-92fbcf53809c.png

在 u-boot 源碼目錄下執行“git diff cmd/bdinfo.c > bdinfo.patch"。這個操作將在 u-boot 源碼目錄下生成 bdinfo.patch 文件,其內容如下:

063d82f4-ad88-11ef-93f3-92fbcf53809c.png

應用 Patch

把 Patch 文件拷貝到 Petalinux 工程下 project-spec/meta-user/recipes-bsp/u-boot/files 文件夾中。

0641bbd0-ad88-11ef-93f3-92fbcf53809c.png

編輯 u-boot-xlnx_%.bbappend,添加 SRC_URI +="

file://bdinfo.patch", 0647d240-ad88-11ef-93f3-92fbcf53809c.png

準備就緒,編譯并運行

一切準備好了,接下來就是常規操作 Build Petalinux 工程并且打包 boot.bin 文件。最后上板啟動 u-boot, 運行 bdinfo 命令:

0657f09e-ad88-11ef-93f3-92fbcf53809c.png

我們添加的打印信息在 Bdinfo 中打印了出來,可見 Patch 成功了!

這個簡單例子演示了 Petalinux 工程 Patch 源碼的完整操作。同樣可參照該流程對 Kernel/FSBL 等其它源碼進行patch,需要注意的地方:

1. 用來生成 Patch 的源碼版本必須與 Petalinux 編譯用的源碼版本完全一致,否則 Patch 文件無法匹配。

2. 也可使用 Linux 的 diff 命令來生成 Patch,需要注意 Generate patch 時目標文件夾深度要與 Apply 時一致,否則 Patch 也無法匹配(參考閱讀 diff 命令的 -p 選項)。

3. 修改 u-boot-xlnx_%.bbappend 文件以將 Patch 加入到 Build 過程中,注意如果 /project-spec/meta-user/recipes-bsp/u-boot 文件夾不存在的話(很有可能),可以按照該目錄結構自己來創建,.bbappend 文件的作用及語法可參考 Yocto 相關文檔。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 源碼
    +關注

    關注

    8

    文章

    664

    瀏覽量

    30003
  • u-boot
    +關注

    關注

    0

    文章

    122

    瀏覽量

    38606
  • 命令
    +關注

    關注

    5

    文章

    713

    瀏覽量

    22531
  • 編輯器
    +關注

    關注

    1

    文章

    812

    瀏覽量

    31546

原文標題:開發者分享|如何在 Petalinux 下 Patch u-boot 源碼

文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發者社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    U-boot的基本介紹

    從本文開始,將陸續推送“手把手教你移植U-boot”系列文章,目標是由淺入深地講解U-boot的工作流程、原理、配置方法和移植方法,手把手教你完成U-boot的移植工作,默認硬件開發平臺為ARM,操作系統為Linux。
    發表于 07-14 16:52 ?3386次閱讀
    <b class='flag-5'>U-boot</b>的基本介紹

    U-boot的執行流程

    本文主要講述了U-boot的執行流程。
    發表于 07-14 16:58 ?827次閱讀
    <b class='flag-5'>U-boot</b>的執行流程

    u-boot源碼

    哪位大大有最新的u-boot源碼啊,現在正在學習u-boot,想要一份源碼,怎奈官方下載地址不能。誰有發一
    發表于 07-12 16:11

    U-Boot的啟動及移植分析

    bootloader 開發是嵌入式系統必不可少而且十分重要的部分,U-Boot 為功能強大的bootloader 開發軟件。本文詳細分析了U-Boot 的啟動流程,并結合其源碼,闡述了U-Bo
    發表于 09-01 16:34 ?27次下載

    Porting U-Boot to the Control

    In this paper, the way of porting U-Boot to Control Computer Based MPC8349 will beintroduced
    發表于 01-25 15:45 ?13次下載

    一種在U-BOOT中嵌入千兆網絡功能的方法

    一種在U-BOOT中嵌入千兆網絡功能的方法摘 要:U-BOOT是一種開放源碼的、用于多種嵌入式微處理器的引導加載程序,目前U-BOOT僅支持10M/100M網絡功能。本文介紹了一種讓
    發表于 02-05 17:38 ?17次下載

    u-boot的Makefile分析

    u-boot的Makefile分析 U-BOOT是一個LINUX的工程,在編譯之前必須已經安裝對應體系結構的交叉編譯環境,這里只針對ARM,編譯器系列軟件為arm-linux-*。 U-
    發表于 05-17 09:16 ?2112次閱讀

    U-Boot結構功能介紹

      U-Boot,全稱 Universal Boot Loader,是遵循GPL條款的開放源碼項目。從FADSROM、8xxROM、PPCBOOT逐步發展演化而來。其源碼目錄、編譯形式
    發表于 07-30 09:17 ?1225次閱讀
    <b class='flag-5'>U-Boot</b>結構功能介紹

    u-boot簡介

    U-Boot,全稱 Universal Boot Loader,是遵循GPL條款的開放源碼項目。U-Boot的作用是系統引導。U-Boot
    發表于 10-14 11:17 ?3653次閱讀

    何在U-Boot中實現對Yaffs鏡像的設計?

    U-Boot是目前廣泛使用的嵌入式操作系統通用引導程序,具有功能豐富強大,支持多種操作系統和CPU體系,易于功能擴展和移植,源碼開放等多種優點。U-Boot,全稱 Universal Boot
    的頭像 發表于 08-29 05:02 ?3844次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>U-Boot</b>中實現對Yaffs鏡像的設計?

    U-Boot架構淺析

    導讀:嵌入式Linux系統搭建,bootloader是必不可少的一環,而U-Boot已成嵌入式Linux事實標準。所以較為深入的分析U-Boot的設計,對于更...
    發表于 02-07 11:56 ?7次下載
    <b class='flag-5'>U-Boot</b>架構淺析

    u-boot中使用ethernet的方法

    KV260 petalinux BSP在u-boot device tree中disable了GEM3,也就是說ethernet在u-boot中不建議使用ethernet。
    的頭像 發表于 07-21 10:25 ?4258次閱讀

    創建自定義的u-boot命令

    為什么會有這篇文章,因為小生被u-boot源碼的設計所吸引了(源碼對命令的處理過程)。自定義u-boot命令屬于u-boot
    的頭像 發表于 08-08 14:46 ?1212次閱讀

    Linux U-Boot開發指南

    介紹 U-Boot 的編譯打包、基本配置、常用命令的使用、基本調試方法等, 為 U-BOOT 的移植及應用開發提供了基礎。
    的頭像 發表于 03-06 10:28 ?1529次閱讀
    Linux <b class='flag-5'>U-Boot</b>開發指南

    u-boot armv8鏈接腳本

    u-boot armv8鏈接腳本 在進行源碼分析之前,首先看看u-boot的鏈接腳本,通過鏈接腳本可以從整體了解一個u-boot的組成,并且可以在啟動分析中知道某些邏輯是在完成什么工作
    的頭像 發表于 12-07 11:19 ?858次閱讀
    主站蜘蛛池模板: 国产精品嫩草影院在线播放 | 五月激情综合婷婷 | 色狠狠综合网 | 美女网站在线观看视频18 | 天天射天天射天天射 | 国产精品性 | 午夜女同影院 | 亚洲黄色性视频 | 永久免费观看午夜视频在线 | 天天干国产 | 美女网站黄在线看 | 色偷偷人人 | 欧美刺激午夜性久久久久久久 | 色老头综合 | 天天爽夜夜爽天天做夜夜做 | 午夜三级毛片 | 天堂在线最新版www中文 | 四虎影院精品在线观看 | 亚洲国产成人va在线观看 | 天天躁日日躁成人字幕aⅴ 天天躁夜夜躁 | 精品国产1000部91麻豆 | 日本福利片午夜免费观着 | 免费看欧美一级特黄α大片 | 高清一区高清二区视频 | 色狠狠色综合吹潮 | 亚洲swag精品自拍一区 | 久久精品免费在线观看 | 亚洲综合五月天欧美 | 99久精品 | aa黄色毛片 | 久久久久琪琪免费影院 | 看真人一级毛多毛片 | 天堂bt种子资源地址在线 | 午夜亚洲 | 狠狠色丁香婷婷综合 | 欧美视频亚洲色图 | 免费一级毛片在线播放不收费 | 1024国产看片在线观看 | 欧美伊人久久综合网 | 么公的好大好硬好深好爽视频 | 手机福利在线 |