code style

2017年7月14日 星期五

Device Tree(1)觀念和介紹

概念:
Linux  Kernel從3.x開始引入設備樹的概念。樹狀結構來描述硬體,每一個node有property/value來描述屬性,除了root node之外,都會有一個parent。原則上是非動態偵測的device,就要加入device tree,例如PCI。

下圖表示一個最簡單可以開機的OS的device tree,包含了平台、CPU、memory等資訊。 



Node Names:
名稱組成方式為 => node-name@unit-address

node-name為長度1~31的大小寫英文數字以及 ,(comma) .(period) _(underscore) +(plus sign) -(dash)組成。開頭必頭為英文字母。

unit-address要符合reg property。unit-address可以省略,只要名稱不要和其他兄弟節點一樣即可。

root node的名稱是slash(/)。

例如ethernet@fe001000和ethernet@fe002000這兩個node就是以unit-address來分別。

建議的node-name:
• atm
• cache-controller
• compact-flash 9
• can
• cpu
• crypto
• disk
• display
• dma-controller
• ethernet
• ethernet-phy
• fdc
• flash
• gpio
• i2c
• ide
• interrupt-controller
• isa
• keyboard
• mdio
• memory
• memory-controller
• mouse
• nvram
• parallel
• pc-card
• pci
• pcie
• rtc
• sata
• scsi
• serial
• sound
• spi
• timer
• usb
• vme
• watchdog



沒有留言:

張貼留言