Difference between revisions of "Device Tree Reference"

From eLinux.org
Jump to: navigation, search
(add link to Device Tree Usage)
(add link to Linux Drivers Device Tree Guide)
Line 12: Line 12:
  
 
It is intended to provide an overview of device tree concepts and how they are used to describe a machine.
 
It is intended to provide an overview of device tree concepts and how they are used to describe a machine.
 +
 +
=== Miscellaneous Tips ===
 +
 +
[[Linux Drivers Device Tree Guide]]
  
 
=== Device Tree Source ===
 
=== Device Tree Source ===

Revision as of 20:35, 8 June 2016


Reference Manual

Introduction

Device Tree Usage

The Device Tree Usage page was previously located at devicetree.org

It walks through how to write a device tree for a new machine.

It is intended to provide an overview of device tree concepts and how they are used to describe a machine.

Miscellaneous Tips

Linux Drivers Device Tree Guide

Device Tree Source

  • presentations

Bindings

Subsystem specific

  • gpio / pinctrl
  • interrupts
  • timers
  • etc

Overlays

Device Tree Source Validation

Compiling .dtb (FDT binary blob)

  • via kernel make system
    • all configured .dtb
      • make dtbs
    • specific .dtb
      • make arch/arm/boot/dts/qcom-apq8074-dragonboard.dtb
  • via generated script in build directory
    • arch/arm/boot/dts/.*.dtb.cmd
    • arch/${ARCH}/boot/dts/.*.dtb.cmd

install

  • make dtbs_install
    • installs in /boot/dtbs/<kernel version> ???? -- is this useful ???
  • many other ways to install ....

boot loaders

booting

debugging

  • diffing .dts, .dtb, /proc/devicetree/
  • locating source location for properties
  • boot time messages
    • device creation
    • driver registration
    • binding driver to device
    • deferred binding

man pages

Glossary

  • .dtb
  • .dts
  • Binary Blob
  • EDT Expanded Device Tree
  • FDT Flattened Device Tree

Definitions