設備信息添加
ARM平臺的設備信息,都是通過Device Tree設備樹來添加,設備樹信息放置在arch/arm64/boot/dts/下
下圖就是一個中斷控制器的設備樹信息:

compatible字段:用于與具體的驅動來進行匹配,比如圖片中arm, gic-400,可以根據這個名字去匹配對應的驅動程序;
interrupt-cells字段:用于指定編碼一個中斷源所需要的單元個數,這個值為3。比如在外設在設備樹中添加中斷信號時,通常能看到類似interrupts= 《0 234》;的信息,第一個單元0,表示的是中斷類型(1:PPI,0:SPI),第二個單元23表示的是中斷號,第三個單元4表示的是中斷觸發的類型;
reg字段:描述中斷控制器的地址信息以及地址范圍,比如圖片中分別制定了GIC Distributor(GICD)和GIC CPUInterface(GICC)的地址信息;
interrupt-controller字段:表示該設備是一個中斷控制器,外設可以連接在該中斷控制器上;
關于設備數的各個字段含義,詳細可以參考Documentation/devicetree/bindings下的對應信息;
設備樹的信息,是怎么添加到系統中的呢?DeviceTree最終會編譯成dtb文件,并通過Uboot傳遞給內核,在內核啟動后會將dtb文件解析成device_node結構。關于設備樹的相關知識,本文先不展開,后續再找機會補充。來一張圖,先簡要介紹下關鍵路徑:

設備樹的節點信息,最終會變成device_node結構,在內存中維持一個樹狀結構;
設備與驅動,會根據compatible字段進行匹配;
-
嵌入式
+關注
關注
5198文章
20446瀏覽量
334011 -
驅動
+關注
關注
12文章
1955瀏覽量
88524 -
Linux
+關注
關注
88文章
11760瀏覽量
219016 -
設備
+關注
關注
2文章
4835瀏覽量
73718
發布評論請先 登錄
linux查看設備信息和驅動安裝信息 精選資料分享
設備樹中GIC中斷控制器節點
ARM GIC(二)之中斷術語的定義
ARM-Linux-IIC設備的添加與驅動實現
小電阻器對治理電網GIC的效果分析
GIC是什么意思 GIC硬件原理
GIC驅動的執行流程是什么
GIC-600的組件是如何連接的
GIC-600的內部結構組件
gic和ARM Core的連接
GIC驅動設備信息添加
評論