Difference between revisions of "Device tree future"

From eLinux.org
Jump to: navigation, search
(draft schedule: remove times slots, duplicate list of session titles. note about being tentative)
(Linux Plumbers 2015 Device Tree Track: move "Material to review" to the end of the section. Remove section headers that had no material to review. Remove "at the conference" from some section headers.)
Line 37: Line 37:
  
 
== Linux Plumbers 2015 Device Tree Track ==
 
== Linux Plumbers 2015 Device Tree Track ==
 
=== Material to review '''before''' the conference ===
 
 
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'''
 
** [https://lwn.net/Articles/572692/ Device trees I: Are we having fun yet?] - Neil Brown, LWN.net November 2013
 
** [https://lwn.net/Articles/573409/ Device trees II: The harder parts] - Neil Brown, LWN.net November 2013
 
** "Device Tree for Dummies", ELC 2014 by Thomas Petazzoni
 
*** [[Media:petazzoni-device-tree-dummies_0.pdf|PDF]]
 
*** [https://www.youtube.com/watch?v=uzBwHFjJ0vU YouTube video]
 
* '''More advanced material'''
 
** "The Device Tree as a Stable ABI: A Fairy Tale?", ELC 2015 by Thomas Petazzoni
 
*** http://elinux.org/images/0/0a/The_Device_Tree_as_a_Stable_ABI-_A_Fairy_Tale%3F.pdf
 
** "Device Tree, the Disaster so Far", ELC Europe 2013 by Mark Rutland
 
*** [[Media:Rutland-presentation_3.pdf]]
 
*** [https://www.youtube.com/watch?v=xamjHjjyeBI YouTube video]
 
 
 
==== Overlays ====
 
 
* "Transactional Device Tree & Overlays: Making Reconfigurable Hardware Work", ELC 2015 by Pantelis Antoniou
 
** [[Media:Dynamic-dt-keynote-v3.pdf|PDF]]
 
** [http://www.youtube.com/watch?v=3Ag7ZBC_Nts YouTube video]
 
* 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
 
*** [http://www.spinics.net/lists/devicetree/msg69490.html [PATCH 0/4] Device Tree Quirks & the Beaglebone]
 
*** [http://www.spinics.net/lists/devicetree/msg69565.html cpu card plugged into multiple carrier card variants, post manufacturing]
 
** devices present only during manufacturing
 
*** [http://www.spinics.net/lists/devicetree/msg82817.html Dealing with optional i2c devices in a devicetree ]
 
 
==== documentation ====
 
 
==== dtc ====
 
 
==== Probe Ordering ====
 
 
* Alexander Holler
 
** 2014.05.12 [https://lkml.org/lkml/2014/5/12/452 [RFC PATCH 0/9] dt: dependencies (for deterministic driver]
 
* Tomeu Vizoso
 
** 2015.05.25[http://thread.gmane.org/gmane.linux.kernel.gpio/8465 [PATCH 00/21] On-demand device registration]
 
** 2015.06.17 [http://lists.infradead.org/pipermail/linux-arm-kernel/2015-June/351061.html [PATCH 00/13] Discover and probe dependencies]
 
** 2015.07.28 [https://lkml.org/lkml/2015/7/28/534 [PATCH v2 0/22] On-demand device probing]
 
** 2015.08.06 [http://article.gmane.org/gmane.linux.acpi.devel/77867 [PATCH v3 0/18] On-demand device probing]
 
** 2015.08.06 [https://lkml.org/lkml/2015/8/6/389 [PATCH v3 0/18] On-demand device probing (2nd archive)]
 
 
==== device tree debugging tools ====
 
 
  
 
=== schedule ===
 
=== schedule ===
Line 198: Line 135:
 
</pre>
 
</pre>
  
=== presentation material - at the conference ===
+
=== presentation material ===
  
 
* [[Media:Plumbers_2016_dt_schedule.pdf | schedule (PDF) - Frank Rowand]]
 
* [[Media:Plumbers_2016_dt_schedule.pdf | schedule (PDF) - Frank Rowand]]
Line 207: Line 144:
 
* [[Media:Plumbers_2016_dt_device_tree_tools.pdf | Device Tree Tools (PDF) - Frank Rowand]]
 
* [[Media:Plumbers_2016_dt_device_tree_tools.pdf | Device Tree Tools (PDF) - Frank Rowand]]
  
=== etherpad notes - at the conference ===
+
=== etherpad notes ===
  
 
https://etherpad.openstack.org/p/LPC2015_Device_Tree
 
https://etherpad.openstack.org/p/LPC2015_Device_Tree
 +
 +
=== Material to review '''before''' the conference ===
 +
 +
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'''
 +
** [https://lwn.net/Articles/572692/ Device trees I: Are we having fun yet?] - Neil Brown, LWN.net November 2013
 +
** [https://lwn.net/Articles/573409/ Device trees II: The harder parts] - Neil Brown, LWN.net November 2013
 +
** "Device Tree for Dummies", ELC 2014 by Thomas Petazzoni
 +
*** [[Media:petazzoni-device-tree-dummies_0.pdf|PDF]]
 +
*** [https://www.youtube.com/watch?v=uzBwHFjJ0vU YouTube video]
 +
* '''More advanced material'''
 +
** "The Device Tree as a Stable ABI: A Fairy Tale?", ELC 2015 by Thomas Petazzoni
 +
*** http://elinux.org/images/0/0a/The_Device_Tree_as_a_Stable_ABI-_A_Fairy_Tale%3F.pdf
 +
** "Device Tree, the Disaster so Far", ELC Europe 2013 by Mark Rutland
 +
*** [[Media:Rutland-presentation_3.pdf]]
 +
*** [https://www.youtube.com/watch?v=xamjHjjyeBI YouTube video]
 +
 +
==== Overlays ====
 +
 +
* "Transactional Device Tree & Overlays: Making Reconfigurable Hardware Work", ELC 2015 by Pantelis Antoniou
 +
** [[Media:Dynamic-dt-keynote-v3.pdf|PDF]]
 +
** [http://www.youtube.com/watch?v=3Ag7ZBC_Nts YouTube video]
 +
* 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
 +
*** [http://www.spinics.net/lists/devicetree/msg69490.html [PATCH 0/4] Device Tree Quirks & the Beaglebone]
 +
*** [http://www.spinics.net/lists/devicetree/msg69565.html cpu card plugged into multiple carrier card variants, post manufacturing]
 +
** devices present only during manufacturing
 +
*** [http://www.spinics.net/lists/devicetree/msg82817.html Dealing with optional i2c devices in a devicetree ]
 +
 +
==== Probe Ordering ====
 +
 +
* Alexander Holler
 +
** 2014.05.12 [https://lkml.org/lkml/2014/5/12/452 [RFC PATCH 0/9] dt: dependencies (for deterministic driver]
 +
* Tomeu Vizoso
 +
** 2015.05.25[http://thread.gmane.org/gmane.linux.kernel.gpio/8465 [PATCH 00/21] On-demand device registration]
 +
** 2015.06.17 [http://lists.infradead.org/pipermail/linux-arm-kernel/2015-June/351061.html [PATCH 00/13] Discover and probe dependencies]
 +
** 2015.07.28 [https://lkml.org/lkml/2015/7/28/534 [PATCH v2 0/22] On-demand device probing]
 +
** 2015.08.06 [http://article.gmane.org/gmane.linux.acpi.devel/77867 [PATCH v3 0/18] On-demand device probing]
 +
** 2015.08.06 [https://lkml.org/lkml/2015/8/6/389 [PATCH v3 0/18] On-demand device probing (2nd archive)]
  
 
== Linux Plumbers 2016 Device Tree Track ==
 
== Linux Plumbers 2016 Device Tree Track ==

Revision as of 13:34, 15 November 2016


Top Device Tree page

Devicetree Validation

See section "Devicetree Verification".

Devicetree Verification

Presentations about verification.

The verification project made progress around the time of Linux Plumbers 2015, then stalled out.

Grant Likely has re-awakened the project at Linux Plumbers 2016:

Devicetree Specification

The Power.org Standard for Embedded Power Architecture Platform Requirements (ePAPR) v1.1 is being updated, with the new name of Devicetree Specification Documentation.

PDF presentation of the plans for the specification organization and the proposed schedule.

The update process is occurring in the devicetree.org organization.

Related discussion occurs on the devicetree-spec email list.

Linux Plumbers 2015 Device Tree Track

schedule

final schedule

1:30 Intro
     Frank Rowand
1:35 Device Tree Overlays
     Pantelis Antoniou, Guenter Roeck
2:00 Overlays, some times a good idea sometimes not.
     Pantelis Antoniou
2:15 Device Tree Documentation
     Matt Porter Frank Rowand
2:30 Chat With The dtc Maintainers, part 1
     David Gibson, Jon Loeliger
2:45 ----- Tea Break -----
3:00 Chat With The dtc Maintainers, part 2
     David Gibson, Jon Loeliger
3:10 Overlays and tools for sanity.
     Pantelis Antoniou
3:25 Device Tree Tools
     Frank Rowand
3:40 Device Tree probe order and parallel device probing
     Pantelis Antoniou
3:50 Device tree round up
     Frank Rowand

draft schedule


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

presentation material

etherpad notes

https://etherpad.openstack.org/p/LPC2015_Device_Tree

Material to review before the conference

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.

Overlays

Probe Ordering

Linux Plumbers 2016 Device Tree Track

presentation material

etherpad notes