Petalinux

Petalinux 命令


參考《UG 1157 PetaLinux Command Line Reference Guide》

//創建petalinux工程
petalinux-create -t project --template zynq -n <name> //配置工程
cd 上一步的工程
petalinux-config --get-hw-description ../xsa_folder///配置Linux內核
petalinux-config -c kernel//配置Linux根文件系統
petalinux-config -c rootfs//編譯
petalinux-build//制作BOOT.Bin
petalinux-package --boot --fsbl --fpga --u-boot --force//掛載NFS
mount -t nfs -o nolock 192.168.0.1:/home/moerjie/work /mnt

Petalinux 設置本地編譯

Xilinx下載中心
首先在下載中心下載 petalinux 對應版本的"arm sstate-cache"和"download"包。


將下載好的文件解壓到 /opt/pkg/tools/ 文件路徑下,使用 petalinux-config 配置工程。配置過程可見《領航者 ZYNQ 之嵌入式 Linux 開發指南 V 3.2》6.4 節。

與正點原子教程不同的地方

正點原子的修改 project-spec/meta-user/conf/petalinuxbsp. Conf 的代碼如下:

PREMIRRORS_prepend = " \
git://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n \
gitsm://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n \
ftp://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n \
http://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n \
https://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n"

但是 2023.2 版本的 petalinux 不支持這個語法,需改為:

PERMIRRORS:prepend = "\
git://.*/.* file:///opt/downloads \n \
gitsm://.*/.* file:///opt/downloads \n \
ftp://.*/.* file:///opt/downloads \n \
http://.*/.* file:///opt/downloads \n \
https://.*/.* file:///opt/downloads \n"
pre-mirror: file:///opt/downloads
sstate: /opt/sstate/arm/

掛載 PL 端的 IP 到設備樹

將創建好的 petalinux 工程編譯一遍后,在 ./components/plnx_workspace/device-tree/device-tree 路徑下會生成 pl.dtsi 文件,將內部的設備樹相關的配置復制粘貼到 ./project-spec/meta-user/recipes-bsp/device-tree/files 中的 system-user.dtsi 中,編譯后在系統中加入新的設備。

Petalinux 支持的 axisfifo 的驅動版本是 4.1,但是 vivado 2023.2 中的 axis fifo 的版本為 4.3,因此要將 compatible 中的 "xlnx,axi-fifo-mm-s-4.3" 改為 "xlnx,axi-fifo-mm-s-4.1"
Axis fifo 必須將中斷信號連接到 zynq processing system 才能正確掛載到設備樹。

使用 dtc -I dtb -O dts 反編譯在 ./images/linux/ 路徑下的 system.dtb 文件,即可看到掛載的新設備。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/906426.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/906426.shtml
英文地址,請注明出處:http://en.pswp.cn/news/906426.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Qt】在OrinNX上,使用命令安裝qtmultimedia5-dev時報錯

1、問題描述 在OrinNX+Ubuntu20.04上,使用命令安裝qtmultimedia5-dev時報錯 sudo apt install qtmultimedia5-devThe following packages have unmet dependencies: qtmultimedia5-dev : Depends: libpulse-dev but it is not going to be installed E: Unable to correct p…

上肢康復機器人設計與臨床應用研究

引言 腦卒中、脊髓損傷等神經系統疾病導致的上肢運動功能障礙&#xff0c;嚴重影響了患者的生活質量。傳統康復治療依賴治療師手動輔助訓練&#xff0c;存在效率低、量化難、人力成本高等問題。上肢康復機器人通過精準的運動控制與生物反饋機制&#xff0c;為實現高效、標準化…

mysql不能聚合之數據清洗逗號

有時候因為數據庫不嚴謹導致了出現有些數字很奇怪例如這樣是varchar類型的字符串&#xff0c; 這種數據不能用來運算聚合&#xff0c;那么要怎么辦呢&#xff1f; 這樣就搞定 REPLACE(your_column, ,, )??&#xff1a;將字段中的逗號移除&#xff0c;例如將3,553,850.28轉換…

chrome 瀏覽器插件 myTools, 日常小工具。

1. 起因&#xff0c; 目的: 比如&#xff0c;chatgpt, google&#xff0c; 打開網頁&#xff0c;就能直接輸入文字&#xff0c;然后 grok 就不行&#xff0c;必須用鼠標點一下&#xff0c;才能輸入文字。 對我而言&#xff0c;是個痛點&#xff01;寫個插件&#xff0c;自動點…

outbox架構解說

Outbox 模式是一種用于實現數據一致性的架構模式&#xff0c;特別是在微服務架構中。 它確保在處理事務時&#xff0c;數據的原子性和最終一致性。 Outbox 模式的詳細解說&#xff1a; 1. 概念與背景 背景&#xff1a;在微服務架構中&#xff0c;一個操作可能涉及多個服務&…

噴涂噴漆機器人詳解

1. 定義 噴涂噴漆機器人是專為表面涂裝設計的自動化工業設備&#xff0c;通過精準控制實現高效、均勻的涂料噴涂。其核心價值在于提升生產效率、保障質量一致性&#xff0c;同時減少材料浪費及環境污染&#xff0c;廣泛應用于汽車、航空航天等領域。 2. 結構組成 機械臂&…

DataX:一個開源的離線數據同步工具

DataX 是一個異構數據源離線同步&#xff08;ETL&#xff09;工具&#xff0c;實現了包括關系型數據庫(MySQL、Oracle 等)、HDFS、Hive、ODPS、HBase、FTP 等各種異構數據源之間穩定高效的數據同步功能。它也是阿里云 DataWorks 數據集成功能的開源版本。 為了解決異構數據源同…

微軟家各種copilot的AI產品:Github copilot、Microsoft copilot

背景 大家可能聽到很多copilot&#xff0c;比如 Github Copilot&#xff0c;Microsoft Copilot、Microsoft 365 Copilot&#xff0c;有什么區別 Github Copilot&#xff1a;有網頁版、有插件&#xff08;idea、vscode等的插件&#xff09;&#xff0c;都是面向于程序員的。Mi…

SpringMVC04所有注解按照使用位置劃分| 按照使用層級劃分(業務層、視圖層、控制層)

目錄 一、所有注解按照使用位置劃分&#xff08;類、方法、參數&#xff09; 1. 類級別注解 2. 方法級別注解 3. 參數級別注解 4. 字段/返回值注解 二、按照使用層級劃分&#xff08;業務層、視圖層、控制層&#xff09; 1、控制層&#xff08;Controller Layer&#x…

std::chrono類的簡單使用實例及分析

author: hjjdebug date: 2025年 05月 20日 星期二 14:36:17 CST descrip: std::chrono類的簡單使用實例及分析 文章目錄 1.實例代碼:2. 代碼分析:2.1 auto t1 std::chrono::high_resolution_clock::now();2.1.1 什么是 system_clock2.1.2 什么是 chrono::time_point?2.1.3 什…

電子電路仿真實驗教學平臺重磅上線!——深圳航天科技創新研究院傾力打造,助力高校教學數字化轉型

在傳統電子電路課堂中&#xff0c;實驗室的燈光總與高昂的成本、擁擠的設備、反復的耗材損耗相伴&#xff0c;而教師不得不面對這樣的現實&#xff1a;有限的硬件資源束縛著教學深度&#xff0c;不可逆的實驗風險制約著創新探索&#xff0c;固化的時空場景阻礙著個性化學習。當…

面試真題 - 高并發場景下Nginx如何優化

Nginx是一款高性能的Web服務器和反向代理服務器&#xff0c;以其輕量級、高并發處理能力和穩定性聞名。在面對高并發場景時&#xff0c;合理的配置與優化策略至關重要&#xff0c;以確保服務的穩定性和響應速度。 以下是針對Nginx進行高并發優化的一些關鍵配置和策略&#xff…

算法與數據結構:質數、互質判定和裴蜀定理

文章目錄 質數質數判定質數篩選質因數分解互質判定裴蜀定理 質數 首先回顧「質數」的定義&#xff1a;若一個正整數無法被除了 1 ?和它自身之外的任何自然數整除&#xff0c;則稱該數為質數&#xff08;或素數&#xff09;&#xff0c;否則稱該正整數為合數。 根據上述定義&…

代碼隨想錄算法訓練營第60期第四十二天打卡

大家好&#xff0c;今天還是繼續我們的動態規劃里面的背包問題&#xff0c;前面我們主要接觸的是0-1背包和完全背包&#xff0c;其實這兩個背包問題主要就是看看每一件物品我們是否有多件&#xff0c;如果每一件物品我們只能取一次的話那這樣我們就是0-1背包&#xff0c;如果每…

第41天-Python+Qt四屏播放器開發指南

一、技術選型與工具準備 核心庫: Pyqt5:Python標準GUI庫,構建用戶界面 os / sys:文件系統操作 開發環境: pip install pyqt5 最終效果與運行 import sys from PyQt5.QtWidgets import QVBoxLayout, QHBoxLayout # 添加缺失的布局管理器 from PyQt5.QtCore impor…

upload-labs通關筆記-第12關 文件上傳之白名單GET法

目錄 一、白名單過濾 二、%00截斷 1、%00截斷原理 2、空字符 3、截斷條件 &#xff08;1&#xff09;PHP版本 < 5.3.4 &#xff08;2&#xff09;magic_quotes_gpc配置為Off &#xff08;3&#xff09;代碼邏輯存在缺陷 三、源碼分析 1、代碼審計 &#xff08;1&…

Node.js數據抓取技術實戰示例

Node.js常用的庫有哪些呢&#xff1f;比如axios或者node-fetch用來發送HTTP請求&#xff0c;cheerio用來解析HTML&#xff0c;如果是動態網頁的話可能需要puppeteer這樣的無頭瀏覽器。這些工具的組合應該能滿足大部分需求。 然后&#xff0c;可能遇到的難點在哪里&#xff1f;…

數據結構(3)線性表-鏈表-單鏈表

我們學習過順序表時&#xff0c;一旦對頭部或中間的數據進行處理&#xff0c;由于物理結構的連續性&#xff0c;為了不覆蓋&#xff0c;都得移&#xff0c;就導致時間復雜度為O&#xff08;n&#xff09;&#xff0c;還有一個潛在的問題就是擴容&#xff0c;假如我們擴容前是10…

【Unity】DOTween的常用函數解釋

DOTween插件常用函數解釋 1.DOTween.To&#xff08;通用變化動畫&#xff09; 解釋&#xff1a;將某一個值在一定的時間內變化到另一個值&#xff08;通用的函數&#xff09;&#xff0c;可用于大部分的動畫變化 使用示例&#xff1a; using UnityEngine; using DG.Tweenin…

數據結構測試模擬題(1)

1、約瑟夫問題 #include<bits/stdc.h> using namespace std; const int N25; int e[N],ne[N],head-1,idx1; int n,m; void add_to_head(int x){e[idx]x;ne[idx]head;headidx; } void add(int k,int x){e[idx]x;ne[idx]ne[k];ne[k]idx; } int main(){cin>>n>>…