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

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

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

基于系統(tǒng)設(shè)備樹的構(gòu)建流程

Xilinx賽靈思官微 ? 來源:Xilinx賽靈思官微 ? 2024-11-01 13:38 ? 次閱讀

基于系統(tǒng)設(shè)備樹的構(gòu)建流程

簡(jiǎn) 介

用于構(gòu)建 AMD embeddedsw 組件的舊方法將 .xsa 用作來自硬件人員的交接文件,并將 mdd、mld 和 mss 文件用于不同的軟件配置。這使得舊方法依賴于 AMD 專屬工具,如軟件命令行工具 (XSCT) 和硬件軟件接口 (HSI)。如果沒有這些專屬工具,就無法使用舊方法來編譯 embeddedsw 組件。

基于系統(tǒng)設(shè)備樹的新流程旨在通過采用開源行業(yè)標(biāo)準(zhǔn)來避免這種相依性。它使用系統(tǒng)設(shè)備樹 CMAKE 和基于 Python 的開源工具 Lopper 來組織所需的構(gòu)建系統(tǒng)。

系統(tǒng)設(shè)備樹是常規(guī) Linux 設(shè)備樹的超集。與僅呈現(xiàn) Linux/APU 所需硬件信息的常規(guī) Linux 設(shè)備樹不同,系統(tǒng)設(shè)備樹以設(shè)備樹格式呈現(xiàn)完整的硬件信息,從而為用戶創(chuàng)造了處理更多用例的機(jī)會(huì)。它包含有關(guān)所有處理器的信息,如平臺(tái)管理控制器 (PMC)、PS 管理控制器 (PSM)、實(shí)時(shí)處理單元 (RPU)、應(yīng)用處理單元 (APU) 以及系統(tǒng)中的所有外設(shè)。要生成系統(tǒng)設(shè)備樹,請(qǐng)參閱 附錄 A: 使用 XSCT 生成系統(tǒng)設(shè)備樹。

基于系統(tǒng)設(shè)備樹的流程使用 Lopper 從系統(tǒng)設(shè)備樹中提取所需的硬件元數(shù)據(jù)。舊方法使用 mld/mss 文件生成軟件配置,現(xiàn)在基于 CMAKE 的基礎(chǔ)架構(gòu)通過設(shè)置 CMAKE 變量來生成所需的報(bào)頭文件,用于取代舊的軟件配置。在舊流程中,組件專屬的信息存儲(chǔ)在 mdd/mld/mss 文件中,而在新流程中,這些信息存儲(chǔ)在 YAML 文件中。Python 腳本會(huì)讀取這些 YAML 文件,使用 Lopper 和 CMAKE 命令配置組件的源代碼,并相應(yīng)地填充 BSP 專屬的獨(dú)立數(shù)據(jù)。由此,整個(gè)構(gòu)建系統(tǒng)不再使用 AMD 專屬文件和工具,而改為使用可用的開源基礎(chǔ)架構(gòu)。

因此有必要移植現(xiàn)有的 embeddedsw 獨(dú)立組件和 RTOS 組件,以確保原有軟件組件能夠在這個(gè)基于系統(tǒng)設(shè)備樹的流程中無縫銜接工作。文檔中的章節(jié)解釋了將原有 embeddedsw 驅(qū)動(dòng)程序/庫(kù)/應(yīng)用移植到基于系統(tǒng)設(shè)備樹的新流程所需的步驟和更改。

新增內(nèi)容

以下更改是此流程的新增內(nèi)容:

開源系統(tǒng)設(shè)備樹規(guī)范大量借鑒了 Linux 設(shè)備樹規(guī)范。這些規(guī)范中沒有用于區(qū)分相似外設(shè)的“Device ID”(器件ID)的概念。例如,在舊流程中,如果系統(tǒng)中具有來自同一供應(yīng)商的兩個(gè)以太網(wǎng) MAC,則會(huì)為每個(gè) MAC 分配一個(gè)單獨(dú)的器件 ID。器件 ID 是從 0 開始的正整數(shù)。驅(qū)動(dòng)程序配置結(jié)構(gòu)始終具有一個(gè) u16 DeviceId 字段用于表示已分配的器件 ID。

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

    關(guān)注

    87

    文章

    11199

    瀏覽量

    208681
  • 移植
    +關(guān)注

    關(guān)注

    1

    文章

    376

    瀏覽量

    28092
  • 設(shè)備樹
    +關(guān)注

    關(guān)注

    0

    文章

    38

    瀏覽量

    3105

原文標(biāo)題:embeddedsw 組件移植指南(附下載)

文章出處:【微信號(hào):賽靈思,微信公眾號(hào):Xilinx賽靈思官微】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何編譯設(shè)備和Linux內(nèi)核鏡像文件

    實(shí)驗(yàn)任務(wù):編譯設(shè)備和Linux內(nèi)核鏡像文件,拷貝到sd卡中,再?gòu)膕d卡中拷貝到nand閃存對(duì)應(yīng)的分區(qū)中,最后nand啟動(dòng),進(jìn)入linux系統(tǒng)本篇博客內(nèi)容:1.實(shí)驗(yàn)流程2.注意事項(xiàng)1.
    發(fā)表于 12-20 07:11

    什么是設(shè)備?由什么組成?設(shè)備怎么使用?

    什么是設(shè)備?由什么組成?設(shè)備怎么使用?
    發(fā)表于 03-04 07:04

    rk3308b使用tftp啟動(dòng)內(nèi)核和設(shè)備的具體流程

    ,很不方便,所以找了個(gè)空閑時(shí)間,對(duì)uboot進(jìn)行了修改,使用tftp啟動(dòng)內(nèi)核和設(shè)備,并且掛載nfs文件系統(tǒng),同時(shí)安裝ubuntu16.04,具體流程如下:清空板子的flash,燒錄R
    發(fā)表于 05-17 11:12

    使用Developer Package和Distribution Package編譯的設(shè)備的區(qū)別是什么?

    ) 使用 Developer Package 構(gòu)建設(shè)備(與 bitbake 分開) 此方法在以下 Wiki 頁(yè)面中進(jìn)行了描述。 https://wiki.st.com/stm32mpu/wiki
    發(fā)表于 01-10 07:18

    如何在設(shè)備中創(chuàng)建UART接口?

    我想在具有 openstlinux-20-02-19 生態(tài)系統(tǒng)的 STM32MP157C-DK2 上使用帶 A7 的 UART7。因此,我嘗試在設(shè)備中包含/啟用 UART 接口,但它無法正常工作
    發(fā)表于 01-30 07:12

    TPR*索引構(gòu)建及其動(dòng)態(tài)維護(hù)方法

    提出一種新的TPR*索引構(gòu)建方法,在根節(jié)點(diǎn)層利用速度矢量對(duì)移動(dòng)對(duì)象集進(jìn)行劃分,根據(jù)速度矢量的大小將移動(dòng)對(duì)象聚集到不同子節(jié)點(diǎn)中,并逐層構(gòu)建TPR*。在根節(jié)點(diǎn)層用溢出
    發(fā)表于 03-21 15:00 ?10次下載

    ARM Device Tree設(shè)備

    近期在學(xué)校如何寫linux的設(shè)備驅(qū)動(dòng),這片文章告訴我們?yōu)槭裁匆M(jìn)設(shè)備Device Tree,以及舉例說明設(shè)備是怎樣寫的
    發(fā)表于 11-17 18:16 ?22次下載

    tensorflow的構(gòu)建流程

    本文主要闡述了tensorflow的構(gòu)建流程。
    的頭像 發(fā)表于 12-04 15:01 ?1896次閱讀
    tensorflow的<b class='flag-5'>構(gòu)建</b><b class='flag-5'>流程</b>

    設(shè)備的傳遞及kernel 對(duì)設(shè)備的解析

    當(dāng) U-Boot 將設(shè)備加載到內(nèi)存指定位置后,ARM 內(nèi)核的 SoC 以通用寄存器 r2 來傳遞 dtb 在內(nèi)存中的地址。kernel 獲取到該地址后對(duì) dtb 文件做進(jìn)一步的處理。 設(shè)備
    的頭像 發(fā)表于 07-29 11:19 ?2348次閱讀
    <b class='flag-5'>設(shè)備</b><b class='flag-5'>樹</b>的傳遞及kernel 對(duì)<b class='flag-5'>設(shè)備</b><b class='flag-5'>樹</b>的解析

    PCB構(gòu)建的圣誕

    電子發(fā)燒友網(wǎng)站提供《PCB構(gòu)建的圣誕.zip》資料免費(fèi)下載
    發(fā)表于 07-19 09:26 ?1次下載
    PCB<b class='flag-5'>構(gòu)建</b>的圣誕<b class='flag-5'>樹</b>

    構(gòu)建自己的alexa控制的圣誕

    一棵你可以用聲音單獨(dú)控制燈的圣誕。 硬件設(shè)置 如果你想在這些資源的幫助下構(gòu)建自己的alexa控制的圣誕,你需要特定的硬件。該項(xiàng)目使用了以下組件:
    發(fā)表于 12-02 14:54 ?1次下載

    C++構(gòu)建并復(fù)制二叉

    使用C++構(gòu)建一個(gè)二叉并復(fù)制、輸出。
    的頭像 發(fā)表于 01-10 15:17 ?971次閱讀
    C++<b class='flag-5'>構(gòu)建</b>并復(fù)制二叉<b class='flag-5'>樹</b>

    zynq開發(fā)中的設(shè)備

    在zynq開發(fā)中經(jīng)常會(huì)修改設(shè)備,每次遇到這種情況都有點(diǎn)發(fā)愁,今天把設(shè)備相關(guān)的知識(shí)點(diǎn)總結(jié)一下,希望以后遇到設(shè)備
    的頭像 發(fā)表于 05-25 11:29 ?2058次閱讀
    zynq開發(fā)中的<b class='flag-5'>設(shè)備</b><b class='flag-5'>樹</b>

    NeoPixel圣誕構(gòu)建

    電子發(fā)燒友網(wǎng)站提供《NeoPixel圣誕構(gòu)建.zip》資料免費(fèi)下載
    發(fā)表于 07-11 16:58 ?0次下載
    NeoPixel圣誕<b class='flag-5'>樹</b>的<b class='flag-5'>構(gòu)建</b>

    如何修改內(nèi)核設(shè)備

    如何修改內(nèi)核設(shè)備
    的頭像 發(fā)表于 12-14 14:06 ?744次閱讀
    如何修改內(nèi)核<b class='flag-5'>設(shè)備</b><b class='flag-5'>樹</b>