伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Petalinux工程中設(shè)備樹(shù)的介紹

YCqV_FPGA_EETre ? 來(lái)源:XILINX嵌入式 ? 作者:Terry Ni ? 2021-02-20 16:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

設(shè)備樹(shù)是 Petalinux kernel 的關(guān)鍵組件,接下來(lái)以 2020.1 版本為例,為大家介紹一下在Xilinx Petalinux 工程中的設(shè)備樹(shù)是如何產(chǎn)生,配置以及修改的。

Petalinux 工程中設(shè)備樹(shù)的位置

當(dāng)我們創(chuàng)建了一個(gè) petalinux 工程后(以zcu102為例),在編譯的時(shí)候,會(huì)自動(dòng)生成對(duì)應(yīng)的設(shè)備樹(shù)文件。這些設(shè)備樹(shù)的描述信息通常在以下2個(gè)工程路徑下。

第一個(gè)是在 components/plnx_workspace/device-tree/device-tree 路徑下,這個(gè)路徑下主要保存的都是基于你導(dǎo)入的hdf/xsa后,自動(dòng)生成的設(shè)備樹(shù)信息。通常包括PS的設(shè)備樹(shù),時(shí)鐘的設(shè)備樹(shù),PL 部分 IP 的設(shè)備樹(shù)(Xilinx發(fā)布的包含驅(qū)動(dòng)的IP),以及設(shè)備樹(shù)頭文件。

。/components/plnx_workspace/device-tree/device-tree/zynqmp-clk-ccf.dtsi

。/components/plnx_workspace/device-tree/device-tree/zcu102-revc.dtsi

。/components/plnx_workspace/device-tree/device-tree/pl.dtsi

。/components/plnx_workspace/device-tree/device-tree/system-top.dts

。/components/plnx_workspace/device-tree/device-tree/zynqmp.dtsi

。/components/plnx_workspace/device-tree/device-tree/system-conf.dtsi

。/components/plnx_workspace/device-tree/device-tree/pcw.dtsi

另一個(gè)是在 project-spec/meta-user/recipes-bsp/device-tree/files路徑下,這個(gè)路徑下主要就是用戶基于自動(dòng)生成的設(shè)備樹(shù),自行添加和修改的部分。這部分可以查看 UG1144 第10章 Device Tree Configuration 節(jié)的內(nèi)容。

。/project-spec/meta-user/recipes-bsp/device-tree/files/openamp.dtsi

。/project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi

。/project-spec/meta-user/recipes-bsp/device-tree/files/pl-custom.dtsi

。/project-spec/meta-user/recipes-bsp/device-tree/files/xen-qemu.dtsi

。/project-spec/meta-user/recipes-bsp/device-tree/files/xen.dtsi

需要注意的是,如果 petalinux-config-》DTGsettings-》MACHINE_NAME 采用的是xilinx開(kāi)發(fā)板預(yù)設(shè)的名稱的話(UG1144DTG Settings 章節(jié)中的 Machine name 的說(shuō)明),那么會(huì)自動(dòng)生成對(duì)應(yīng)開(kāi)發(fā)板相關(guān)的設(shè)備樹(shù)信息。

b1c67ca2-71af-11eb-8b86-12bb97331649.png

所以如果使用的是自己的硬件平臺(tái),那么盡量不要使用預(yù)設(shè)的名稱,這樣可以避免導(dǎo)入多余的設(shè)備樹(shù)信息從而導(dǎo)致編譯失敗或者最終功能不正確。

如何修改設(shè)備樹(shù)

1. 基于自動(dòng)生成的設(shè)備樹(shù),添加和修改節(jié)點(diǎn)。

通過(guò)修改。/project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi,來(lái)實(shí)現(xiàn)對(duì)之前已經(jīng)定義的設(shè)備樹(shù)節(jié)點(diǎn)中的屬性進(jìn)行變更,也可以添加沒(méi)有自動(dòng)生成的設(shè)備樹(shù)節(jié)點(diǎn)。

/dts-v1/;

/include/ “system-conf.dtsi”

/ {

};

&gem0 {

phy-handle = 《&phy0》;

ps7_ethernet_0_mdio: mdio {

phy0: phy@7 {

compatible = “marvell,88e1116r”;

device_type = “ethernet-phy”;

reg = 《7》;

};

};

};

gpio-leds {

compatible = “gpio-leds”;

led-ds23 {

label = “l(fā)ed-ds23”;

gpios = 《&ps7_gpio_0 10 0》;

default-state = “on”;

linux,default-trigger = “heartbeat”;

};

};

有時(shí)候?yàn)榱朔奖阍O(shè)備樹(shù)的管理,可以定義多個(gè)設(shè)備樹(shù)文件,然后在 system-user.dtsi 中將這些設(shè)備樹(shù)文件都包含進(jìn)去,如下所示。

/include/ “system-conf.dtsi”

/include/ “system-user-1.dtsi”

/include/ “system-user-2.dtsi”

/include/ “system-user-3.dtsi”

/ {

};

當(dāng)添加了其他的dtsi文件后,還需要修改。/project-spec/meta-user/recipes-bsp/device-tree/device-tree.bbappend 文件,將這些 dtsi 文件的路徑信息包含進(jìn)去。如下所示。

SRC_URI += “file://system-user.dtsi”

SRC_URI += “file://system-user-1.dtsi”

SRC_URI += “file://system-user-2.dtsi”

SRC_URI += “file://system-user-3.dtsi”

2. 完全使用自己的設(shè)備樹(shù)

我們還可以更改 petalinux-config-》 Auto Config Settings 中的配置,直接使用自己編寫好的設(shè)備樹(shù)。

取消 Devicetree autoconfig,使能 Specify a manual device tree include directory, 然后指定設(shè)備樹(shù)的路徑地址。

b209458c-71af-11eb-8b86-12bb97331649.png

怎么描述設(shè)備樹(shù)

設(shè)備樹(shù)中描述的信息都是要與 kernel中設(shè)備的驅(qū)動(dòng)互相對(duì)應(yīng)的。如果驅(qū)動(dòng)中需要某個(gè)參數(shù),但是設(shè)備樹(shù)中并沒(méi)有包含,很可能就會(huì)編譯錯(cuò)誤或者直接使用了默認(rèn)值,從而導(dǎo)致工作異常。kernel 的設(shè)備驅(qū)動(dòng)中,一般都會(huì)包含設(shè)備樹(shù)的描述說(shuō)明來(lái)保證設(shè)備樹(shù)的正確。你可以在 git上的 kernel 源碼中找到響應(yīng)的設(shè)備樹(shù)說(shuō)明。以 GPIO 驅(qū)動(dòng)為例。你可以找到相關(guān)的設(shè)備樹(shù)描述信息如下。

https://github.com/Xilinx/linux-xlnx/blob/xlnx_rebase_v5.4_2020.1/Documentation/devicetree/bindings/gpio/gpio-zynq.txt

Example:

gpio@e000a000 {

#gpio-cells = 《2》;

compatible = “xlnx,zynq-gpio-1.0”;

clocks = 《&clkc 42》;

gpio-controller;

interrupt-parent = 《&intc》;

interrupts = 《0 20 4》;

interrupt-controller;

#interrupt-cells = 《2》;

reg = 《0xe000a000 0x1000》;

};

另外,你可以查看 xilinx wiki上 linux driver 的主題頁(yè)面來(lái)獲取所有 Xilinx 支持的設(shè)備驅(qū)動(dòng)內(nèi)容,其中包含有各個(gè)設(shè)備樹(shù)的例子以及相關(guān)配置等說(shuō)明。

https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841873/Linux+Drivers

反編譯設(shè)備樹(shù)

為了最終確認(rèn)設(shè)備樹(shù)是否正確,我們可以通過(guò) dtc 這個(gè)小應(yīng)用,將 dtb 文件反編譯成 dts 設(shè)備樹(shù)文件。這個(gè)設(shè)備樹(shù)文件,從 system-top.dts 這個(gè) top 文件開(kāi)始,把所有包含的設(shè)備樹(shù)內(nèi)容都整合到了一個(gè) dts 文件中,便于我們確認(rèn)最終的設(shè)備樹(shù)是否正確。其命令格式如下

dtc-I dtb -O dts -o system.dts system.dtb

原文標(biāo)題:開(kāi)發(fā)者分享 | Petalinux 工程中設(shè)備樹(shù)的介紹

文章出處:【微信公眾號(hào):FPGA開(kāi)發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Xilinx
    +關(guān)注

    關(guān)注

    73

    文章

    2205

    瀏覽量

    131748

原文標(biāo)題:開(kāi)發(fā)者分享 | Petalinux 工程中設(shè)備樹(shù)的介紹

文章出處:【微信號(hào):FPGA-EETrend,微信公眾號(hào):FPGA開(kāi)發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    RK3576平臺(tái)PCA9548 I2C開(kāi)關(guān)設(shè)備樹(shù)配置與生效全解析

    中廣泛應(yīng)用。本文結(jié)合實(shí)際設(shè)備樹(shù)配置,從 配置解析 、 生效全流程 、 開(kāi)發(fā)關(guān)鍵要點(diǎn) 三個(gè)維度,講透PCA9548在Linux系統(tǒng)的落地實(shí)現(xiàn),嵌入式開(kāi)發(fā)人員可直接對(duì)標(biāo)實(shí)操。 一、先看懂:PCA9548
    的頭像 發(fā)表于 02-28 11:18 ?1740次閱讀
    RK3576平臺(tái)PCA9548 I2C開(kāi)關(guān)<b class='flag-5'>設(shè)備</b><b class='flag-5'>樹(shù)</b>配置與生效全解析

    Linux設(shè)備樹(shù)到底是啥?一張圖看懂硬件適配的「翻譯官」

    你有沒(méi)有想過(guò):同一份 Linux 內(nèi)核鏡像,為啥能在不同型號(hào)的開(kāi)發(fā)板上跑起來(lái)?比如一塊 ARM 架構(gòu)的開(kāi)發(fā)板,今天換個(gè)顯示屏、明天加個(gè)傳感器,內(nèi)核不用重新編譯就能識(shí)別新硬件 —— 這背后,設(shè)備樹(shù)(Devicetree) 功不可沒(méi)。
    的頭像 發(fā)表于 02-09 17:01 ?1237次閱讀
    Linux<b class='flag-5'>設(shè)備</b><b class='flag-5'>樹(shù)</b>到底是啥?一張圖看懂硬件適配的「翻譯官」

    深入理解設(shè)備樹(shù)chosen節(jié)點(diǎn):固件與內(nèi)核的“配置橋梁”

    在嵌入式 Linux 開(kāi)發(fā)設(shè)備樹(shù)(Device Tree)是連接硬件與內(nèi)核的關(guān)鍵紐帶。但有一個(gè)節(jié)點(diǎn)很特殊 —— 它不描述任何硬件模塊,卻直接決定內(nèi)核能否正常啟動(dòng),這就是chosen節(jié)點(diǎn)。
    的頭像 發(fā)表于 02-09 16:36 ?238次閱讀
    深入理解<b class='flag-5'>設(shè)備</b><b class='flag-5'>樹(shù)</b>chosen節(jié)點(diǎn):固件與內(nèi)核的“配置橋梁”

    Linux 6.8 內(nèi)核 - 錯(cuò)誤:找不到 cmdline 扁平化設(shè)備樹(shù)怎么解決?

    我正在嘗試一個(gè)新的 6.8 linux 內(nèi)核,但我在啟動(dòng)時(shí)收到這個(gè)錯(cuò)誤: 從0x44000000到0x40200000的移動(dòng)圖像,end=41724000 錯(cuò)誤:未找到 cmdline 扁平化設(shè)備樹(shù)
    發(fā)表于 02-09 07:13

    無(wú)線傾角傳感器在古樹(shù)監(jiān)測(cè)的應(yīng)用:以科技守護(hù)活文物的結(jié)構(gòu)安全

    無(wú)線傾角傳感器在古樹(shù)監(jiān)測(cè)的應(yīng)用:以科技守護(hù)活文物的結(jié)構(gòu)安全
    的頭像 發(fā)表于 01-09 11:38 ?743次閱讀
    無(wú)線傾角傳感器在古<b class='flag-5'>樹(shù)</b>監(jiān)測(cè)<b class='flag-5'>中</b>的應(yīng)用:以科技守護(hù)活文物的結(jié)構(gòu)安全

    【OK3506-S12Mini試用評(píng)測(cè)(三)】在虛擬機(jī)修改設(shè)備樹(shù)

    要實(shí)現(xiàn)引腳復(fù)用功能,核心操作是修改鏡像設(shè)備樹(shù)(DTS)文件,具體步驟可按以下詳細(xì)指引操作,確保配置準(zhǔn)確適配開(kāi)發(fā)板與鏡像版本: 一、定位 DTS 文件路徑 首先需進(jìn)入鏡像對(duì)應(yīng)的文件目錄,按以下路徑
    發(fā)表于 11-19 17:21

    【OK3506-S12Mini試用評(píng)測(cè)(二)】開(kāi)發(fā)板SDK配置動(dòng)態(tài)設(shè)備樹(shù)

    在配好的虛擬機(jī)的終端輸入./build.sh bconfig,選擇Kernal 進(jìn)去之后選擇圖中選項(xiàng)(按Y確定) Defconfig name 需要在終端輸入命令,才能得到需要寫的名字。 動(dòng)態(tài)設(shè)備樹(shù)的名字是在虛擬機(jī)中找到要用的的dts文件。
    發(fā)表于 11-19 17:09

    如何在AMD Vitis Unified IDE中使用系統(tǒng)設(shè)備樹(shù)

    您將在這篇博客中了解系統(tǒng)設(shè)備樹(shù) (SDT) 以及如何在 AMD Vitis Unified IDE 中使用 SDT 維護(hù)來(lái)自 XSA 的硬件元數(shù)據(jù)。本文還講述了如何對(duì) SDT 進(jìn)行操作,以便在 Vitis Unified IDE
    的頭像 發(fā)表于 11-18 11:13 ?3251次閱讀
    如何在AMD Vitis Unified IDE中使用系統(tǒng)<b class='flag-5'>設(shè)備</b><b class='flag-5'>樹(shù)</b>

    E203工程源碼時(shí)鐘樹(shù)解析

    的system.v文件以及引腳約束文件,和rtl文件夾內(nèi)的源碼,我們參考源碼繪制了E203在MCU200T的時(shí)鐘樹(shù),方便我們團(tuán)隊(duì)對(duì)E203源碼的時(shí)鐘進(jìn)行修改,分享如下:
    發(fā)表于 10-29 07:25

    成都匯陽(yáng)投資關(guān)于智元與宇樹(shù)拿下 1.24 億訂單,人形機(jī)器人商業(yè)化加速

    ? ? ? 中國(guó)移動(dòng)招標(biāo) 1.24 億元機(jī)器人大訂單 ,智元與宇樹(shù)中標(biāo) 近日 ,智元和宇樹(shù)中標(biāo) “ 移( 杭州) 信息技術(shù)有限公司人形雙足機(jī)器人代工服務(wù)采購(gòu)項(xiàng)目 ” ,其中智元中標(biāo)7800萬(wàn)的全
    的頭像 發(fā)表于 08-04 13:43 ?1349次閱讀

    想在rtsmart中使用uart2,是不是只能通過(guò)修改設(shè)備樹(shù)方法來(lái)實(shí)現(xiàn)uart2的復(fù)用呀?

    我想在rtsmart中使用uart2,是不是只能通過(guò)修改設(shè)備樹(shù)方法來(lái)實(shí)現(xiàn)uart2的復(fù)用呀? 修改設(shè)備樹(shù)后如何只編譯設(shè)備
    發(fā)表于 06-24 07:04

    電源工程師的核心技能樹(shù)體系

    電源工程師的核心技能樹(shù)體系需覆蓋從基礎(chǔ)理論到專業(yè)實(shí)踐、工具應(yīng)用及行業(yè)適配的全鏈條能力。以下是系統(tǒng)化的技能框架,按知識(shí)層級(jí)和應(yīng)用場(chǎng)景展開(kāi),幫助從業(yè)者明確能力提升路徑: 一、基礎(chǔ)理論層:核心知識(shí)根基
    的頭像 發(fā)表于 06-05 09:44 ?3121次閱讀

    在任何平臺(tái)上使用PetaLinux的先決條件

    本篇文章介紹了在任何平臺(tái)上使用 PetaLinux 的先決條件。PetaLinux 是一種嵌入式 Linux 軟件開(kāi)發(fā)套件 (SDK),主要用于基于 FPGA 的系統(tǒng)級(jí)芯片 (SoC) 設(shè)計(jì)或 FPGA 設(shè)計(jì)。
    的頭像 發(fā)表于 04-24 10:40 ?1698次閱讀
    在任何平臺(tái)上使用<b class='flag-5'>PetaLinux</b>的先決條件

    基于RV1126開(kāi)發(fā)板修改CAN內(nèi)核設(shè)備樹(shù)

    編輯設(shè)備樹(shù)文件,執(zhí)行以下指令可以修改nano的板級(jí)頭文件,如下圖所示。(比如基于MCP2515把復(fù)用為SPI1的硬件資源轉(zhuǎn)成CAN對(duì)源代碼進(jìn)行修改)
    的頭像 發(fā)表于 04-17 10:10 ?893次閱讀
    基于RV1126開(kāi)發(fā)板修改CAN內(nèi)核<b class='flag-5'>設(shè)備</b><b class='flag-5'>樹(shù)</b>

    基于RV1126開(kāi)發(fā)板修改GPIO內(nèi)核設(shè)備樹(shù)

    編輯設(shè)備樹(shù)文件,執(zhí)行以下指令可以修改nano的板級(jí)頭文件,如圖所示。(比如把復(fù)用為SPI1的硬件資源改成通用的GPIO對(duì)源代碼進(jìn)行修改)
    的頭像 發(fā)表于 04-17 10:00 ?904次閱讀
    基于RV1126開(kāi)發(fā)板修改GPIO內(nèi)核<b class='flag-5'>設(shè)備</b><b class='flag-5'>樹(shù)</b>