基于系統(tǒng)設備樹的構(gòu)建流程
簡 介
用于構(gòu)建 AMD embeddedsw 組件的舊方法將 .xsa 用作來自硬件人員的交接文件,并將 mdd、mld 和 mss 文件用于不同的軟件配置。這使得舊方法依賴于 AMD 專屬工具,如軟件命令行工具 (XSCT) 和硬件軟件接口 (HSI)。如果沒有這些專屬工具,就無法使用舊方法來編譯 embeddedsw 組件。
基于系統(tǒng)設備樹的新流程旨在通過采用開源行業(yè)標準來避免這種相依性。它使用系統(tǒng)設備樹 CMAKE 和基于 Python 的開源工具 Lopper 來組織所需的構(gòu)建系統(tǒng)。
系統(tǒng)設備樹是常規(guī) Linux 設備樹的超集。與僅呈現(xiàn) Linux/APU 所需硬件信息的常規(guī) Linux 設備樹不同,系統(tǒng)設備樹以設備樹格式呈現(xiàn)完整的硬件信息,從而為用戶創(chuàng)造了處理更多用例的機會。它包含有關所有處理器的信息,如平臺管理控制器 (PMC)、PS 管理控制器 (PSM)、實時處理單元 (RPU)、應用處理單元 (APU) 以及系統(tǒng)中的所有外設。要生成系統(tǒng)設備樹,請參閱 附錄 A: 使用 XSCT 生成系統(tǒng)設備樹。
基于系統(tǒng)設備樹的流程使用 Lopper 從系統(tǒng)設備樹中提取所需的硬件元數(shù)據(jù)。舊方法使用 mld/mss 文件生成軟件配置,現(xiàn)在基于 CMAKE 的基礎架構(gòu)通過設置 CMAKE 變量來生成所需的報頭文件,用于取代舊的軟件配置。在舊流程中,組件專屬的信息存儲在 mdd/mld/mss 文件中,而在新流程中,這些信息存儲在 YAML 文件中。Python 腳本會讀取這些 YAML 文件,使用 Lopper 和 CMAKE 命令配置組件的源代碼,并相應地填充 BSP 專屬的獨立數(shù)據(jù)。由此,整個構(gòu)建系統(tǒng)不再使用 AMD 專屬文件和工具,而改為使用可用的開源基礎架構(gòu)。
因此有必要移植現(xiàn)有的 embeddedsw 獨立組件和 RTOS 組件,以確保原有軟件組件能夠在這個基于系統(tǒng)設備樹的流程中無縫銜接工作。文檔中的章節(jié)解釋了將原有 embeddedsw 驅(qū)動程序/庫/應用移植到基于系統(tǒng)設備樹的新流程所需的步驟和更改。
新增內(nèi)容
以下更改是此流程的新增內(nèi)容:
開源系統(tǒng)設備樹規(guī)范大量借鑒了 Linux 設備樹規(guī)范。這些規(guī)范中沒有用于區(qū)分相似外設的“Device ID”(器件ID)的概念。例如,在舊流程中,如果系統(tǒng)中具有來自同一供應商的兩個以太網(wǎng) MAC,則會為每個 MAC 分配一個單獨的器件 ID。器件 ID 是從 0 開始的正整數(shù)。驅(qū)動程序配置結(jié)構(gòu)始終具有一個 u16 DeviceId 字段用于表示已分配的器件 ID。
-
Linux
+關注
關注
88文章
11763瀏覽量
219079 -
移植
+關注
關注
1文章
416瀏覽量
29414 -
設備樹
+關注
關注
0文章
45瀏覽量
3574
原文標題:embeddedsw 組件移植指南(附下載)
文章出處:【微信號:賽靈思,微信公眾號:Xilinx賽靈思官微】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
如何獲取yocto build來構(gòu)建對設備樹的更改?
請問有沒有辦法修改live系統(tǒng)上的設備樹?
如何編譯設備樹和Linux內(nèi)核鏡像文件
rk3308b使用tftp啟動內(nèi)核和設備樹的具體流程
使用Developer Package和Distribution Package編譯的設備樹的區(qū)別是什么?
如何在設備樹中創(chuàng)建UART接口?
ARM Device Tree設備樹
設備樹的傳遞及kernel 對設備樹的解析
基于系統(tǒng)設備樹的構(gòu)建流程
評論