From: eLinux.org
Device tree future
Contents
Where Device Tree is Headed
Resources for the Linux Plumbers 2015 Device Tree Track
THIS SECTION IS UNDER CONSTRUCTION
Material to review before the event
The purpose of the Linux Plumbers conference is to discuss things.
The conference is not a good place to go if you want to look at slides
and listen to canned presentations.
The discussions will work better if the attendees have prepared in
advance, and have a basic understanding of the technology and issues to
be discussed. The goal of this section is to provide the resources
needed to be prepared to discuss.
Device Tree 101
If you are new to Device Tree, these resources will start you on the
path to a basic understanding.
- An introduction
- Device trees I: Are we having fun
yet? - Neil Brown, LWN.net
November 2013 - Device trees II: The harder
parts - Neil Brown, LWN.net
November 2013 - “Device Tree for Dummies”, ELC 2014 by Thomas Petazzoni
- Device trees I: Are we having fun
- More advanced material
- “The Device Tree as a Stable ABI: A Fairy Tale?”, ELC 2015 by
Thomas Petazzoni - “Device Tree, the Disaster so Far”, ELC Europe 2013 by Mark
Rutland
- “The Device Tree as a Stable ABI: A Fairy Tale?”, ELC 2015 by
Overlays
- “Transactional Device Tree & Overlays: Making Reconfigurable
Hardware Work”, ELC 2015 by Pantelis Antoniou - Problem statements
- IO boards, eg beaglebone capes
- PPC sub-tree beneath hot-plug PCI
- http://www.spinics.net/lists/linux-pci/msg40740.html
- It might be possible to use existing dynamic add and remove
functions (CONFIG_OF_DYNAMIC) for this purpose
- Quirks - TODO
- [PATCH
0/4
Device Tree Quirks & the Beaglebone] - cpu card plugged into multiple carrier card variants, post
manufacturing
- [PATCH
- devices present only during manufacturing
documentation
dtc
Probe Ordering
- Tomeu Vizoso
- First approach: [PATCH
00/21
On-demand device registration] - Second approach: [PATCH
00/13
Discover and probe dependencies]
- First approach: [PATCH
- Other….
device tree debugging tools
Current draft of the schedule
Expect this to evolve.
01 -- Device Tree Overlays - Pantelis
Devicetree overlay use in Juniper products - Guenter
02 -- folded into 01
03 -- Overlays, some times a good idea sometimes not. - Pantelis
04 -- Device Tree Documentation - Frank, Matt
05 -- Chat With The dtc Maintainers - Frank, the maintainers
06 -- Overlays and tools for sanity. - Pantelis
07 -- Device Tree Tools - Frank
08 -- Device Tree and parallel device probing - Pantelis
09 -- Device tree round up - Frank
session start
length offset
------ ------
01 30 0
02 (folded into 01)
03 15 :30
04 15 :45
break 10 1:00
05 30 1:10
06 10 1:40
07 15 1:55
08 15 2:10
09 10 2:20
-----
2:30
01 -- Device Tree Overlays - Pantelis
Device Tree Overlays are now in the mainline kernel. This session
will cover what they are, how they are used.
As part of this session I will examine device tree overlays, device
tree changeset, the phandle resolution mechanism, overlay overlap
removal checks and finally device tree variants (or quirks).
Devicetree overlay use in Juniper products - Guenter
The Juniper use case will be discussed:
At Juniper, we use devicetree overlays to manage a variety of cards
which can be inserted and removed at runtime.
In this session, I will describe the basic system architecture, our
requirements, and why we decided to use devicetree overlays to meet
those requirements. I will also dive into the actual implementation
of our card management framework in the Linux kernel, and explore
some of the limitations of the current devicetree overlay code.
02 -- was folded into 01
03 -- Overlays, some times a good idea sometimes not. - Pantelis
This session will cover supported and not supported overlay cases.
04 -- Device Tree Documentation - Frank
What device tree documentation and tutorials exist and where to find
them. What is needed?
What new documentation is expected this year?
Can we bring consistency to the documentation style/syntax?
05 -- Chat With The dtc Maintainers - Frank
This session is an opportunity to ask questions of the dtc maintainers
or listen to their thoughts on dtc related topics.
06 -- Overlays and tools for sanity. - Pantelis
Device Tree overlays represent a big change for the device tree in
the kernel. Where as of old the device tree was something static,
now it's something that can change at runtime.
We could use some new tools to help us when creating them (compile
time) and some kernel tooling to help when applying them (run time).
07 -- Device Tree Tools - Frank
What tools exist to support device tree development and
debugging? Where are they? What new tools have been proposed or
requested?
08 -- Device Tree probe order and parallel device probing - Pantelis
The new dynamic device tree capabilities entails marking not only
the location of phandles but the references made to them. We can use
that information to construct a device probe order schedule that can
be used to support parallel device probing which is an obvious win
for kernel boot time.
If earlier sessions run long, this one may be shortened or deleted.
09 -- Device tree round up - Frank
Review previous sessions, round up loose ends