Devicetree: Difference between revisions
mNo edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
In simpler terms - a devicetree tells the kernel (or another DT-compatible piece of software/firmware like a bootloader) where each component is in register space/on an I2C or similar bus, and what settings to use to set it up. It is the basic mechanism for discovering components on embedded platforms, including ARM. | In simpler terms - a devicetree tells the kernel (or another DT-compatible piece of software/firmware like a bootloader) where each component is in register space/on an I2C or similar bus, and what settings to use to set it up. It is the basic mechanism for discovering components on embedded platforms, including ARM. | ||
Devicetrees are validated using '''devicetree schema | Devicetrees are validated using '''devicetree schema''', which is described by bindings; see [[/Bindings]] for more information. | ||
== History == | == History == | ||
Line 67: | Line 67: | ||
On node 2 there is also a property, <code>vendor,baz-companion</code>, which takes a pointer to another node - here the one we labeled "my_node". | On node 2 there is also a property, <code>vendor,baz-companion</code>, which takes a pointer to another node - here the one we labeled "my_node". | ||
== Verifying | == Verifying DTS files == | ||
The Linux kernel has tools for | The Linux kernel has tools for making sure that device tree sources (DTS) use the bindings correctly. These are useful when writing device sources; getting | ||
the DT checks to pass is also mandatory for upstream inclusion of a DTS. | |||
To verify all DTS files built with the selected defconfig options, run: | To verify all DTS files built with the selected defconfig options, run: |