日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux 比较新的设备树 详解 device tree

發(fā)布時間:2025/3/21 linux 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 比较新的设备树 详解 device tree 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、設(shè)備樹總覽

首先,設(shè)備樹是一種數(shù)據(jù)結(jié)構(gòu),他用來描述一個系統(tǒng)的硬件組織,比如說一個BBB開發(fā)板是由哪些模塊組成的。既然如此,如何描述一個組織呢?分為兩部分。

  • 各個組件的層次關(guān)系。
  • 每個組件的具體信息。
  • 這是通過常理就能推斷出來的。

    然后根據(jù)這兩條常識,結(jié)合設(shè)備樹知識可以知道,dts文件中的每個節(jié)點代表一個組件,整個設(shè)備樹的層級關(guān)系也就是各個組件的層次關(guān)系。

    二、各個組件的描述

    每個組件的信息通過屬性property來描述,每個屬性都有對應(yīng)的值value。

    2.1 屬性枚舉
    • compatible?
      兼容性描述,驅(qū)動根據(jù)這個匹配設(shè)備。

    2.1.1 地址相關(guān)屬性

    • reg?
      設(shè)備寄存器地址描述,形式為???address1 length1 [address2 length2] …???,可以看到每個元組代表一個寄存器范圍。這也是我們希望看到的。

    • #address-cells?
      表示用幾個32bit單元來表示地址。如果是2,則第一個表示片選,第二個表示相對于片選基址的偏移。

    • #size-cells?
      為0或1。0表示沒有地址范圍,即只有一個地址;1表示用一個32bit數(shù)值表示range。

    • ranges?
      explicitly show 總線設(shè)備的地址映射,比如說bus掛了一個i2c控制器,bus節(jié)點通過range屬性告訴cpu訪問i2c控制器的地址。

    2.1.2 中斷相關(guān)屬性

    • interrupt-controller?
      一個空屬性,用來表示該設(shè)備接受中斷信號。

    • #interrupt-cells?
      中斷控制器的屬性,表示每個interrupt specifier中有多少個單元

    • interrupt-parent?
      表示連接的中斷控制器

    • interrupts?
      表示各個interrupt specifier,每個中斷輸出信號對應(yīng)一個interrupt specifier。中斷線編號,中斷觸發(fā)信號是高有效or低有效or邊沿觸發(fā)or電平觸發(fā)的信息都編碼在interrupt specifier中。

    2.1.3 設(shè)備特有屬性

    比如某些廠商自己定義的兼容屬性等,除了不能和已有的名字沖突外,還都要給出相應(yīng)的binding文檔,指出特定的兼容屬性是什么意思,需要定義哪些屬性,可能需要哪些子節(jié)點,代表什么設(shè)備。

    三、特殊節(jié)點 ? 3.1 aliases節(jié)點

    給節(jié)點添加別名,相當于加了一個string屬性,保存對應(yīng)節(jié)點的路徑。操作系統(tǒng)就可以通過這個屬性來訪問對應(yīng)設(shè)備。

    3.2 chosen節(jié)點

    不代表實際的設(shè)備,用于firmware和OS之間傳遞數(shù)據(jù)。

    總結(jié)

    以上是生活随笔為你收集整理的linux 比较新的设备树 详解 device tree的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。