User:Knuxify/Draft:Devicetree take 2: Difference between revisions
Created page with "{{Navbox devicetree}} The '''devicetree''' (device tree, DT) is a tree structure that describes the hardware register layout and configuration of a device. Devicetrees are written in a plaintext format known as the '''Devicetree Source (DTS)''' format. The DTS is later compiled into a '''Devicetree Blob (DTB)'''; in this form, it can be loaded by software/firmware. Devicetrees are validated using '''devicetree schema''', which is described in '''DT bindings'''; see /..." |
(No difference)
|
Revision as of 09:20, 20 February 2025
The devicetree (device tree, DT) is a tree structure that describes the hardware register layout and configuration of a device.
Devicetrees are written in a plaintext format known as the Devicetree Source (DTS) format. The DTS is later compiled into a Devicetree Blob (DTB); in this form, it can be loaded by software/firmware.
Devicetrees are validated using devicetree schema, which is described in DT bindings; see /Bindings for more information.
In the Linux kernel, as well as in other DT-using projects like U-Boot, it is the primary method of discovering peripherals on embedded platforms such as ARM.
Introduction
On a standard x86 system, peripherals are usually autodetected, through either ACPI, or by being on a bus like PCI or USB (TODO - not actually sure how this works?). On an ARM system, however, things are somewhat more complicated.
A devicetree is a map of the various peripherals that make up an SoC or device;