July 13, 2013
Participants: Wolfram Sang, Guenter Roeck, Linus Walleij, Jonathan Corbet, Greg KH, Mark Brown, David Woodhouse.
People tagged: (none)
See also Jon Corbet's excellent LWN articles entitled “Device tree troubles” and “Device trees as ABI”. (If you cannot see them due to not being an LWN subscriber, it is time for you to get a subscription!)
Wolfram Sang is concerned that device tree bindings are trivial to add, but once added must be supported forever, even if they are later deprecated or superseded. Adding new binding should therefore be done carefully, or better yet, avoided. Unfortunately, new bindings are currently added in a distributed fashion by maintainers who do not have full understanding of the system. Wolfram would like some rules of thumb for when and how bindings should be accepted. For example, should it be required that bindings be accepted before the first driver that uses them?
Guenter Roeck
doesn't like the idea of “holding the driver hostage”, but
asks what he can do if he proposes a new binding and doesn't get any
feedback.
He suggests that a device-tree co-maintainer or bindings reviewer might
be helpful, but is not confident that enough knowledgeable people can
break free time for this task.
Wolfram suggests that Guenter could learn on the job,
to which
Guenter
replied that he might start by monitoring the devicetree-discuss list.
Linus Walleij
does not have confidence in much good feedback from devicetree-discuss
given its current organization, and notes that device tree used to be
covered by an IEEE standard, but now it was up to the Linux community.
Jonathan Corbet
noted that an LKS discussion would not be much help unless there was
differences of opinion among the clueful as to how device-tree bindings
should be handled.
If not, he believes that
good documentation would be a better step forward (and even offered to help
a bit with it).
Greg KH
also called for documentation, saying that it would make his maintainer
job easier if he had some idea what the device-tree rules actually were.
Linus Walleij pointed to
Documentation/devicetree/usage-model.txt
, but said that more
was needed, calling out some complexities of the device-tree syntax and
semantics.
Wolfram Sang
believes that a list of “DON'Ts” would be the most valuable.
Grant Likely
believes that this topic should be part of the ARM maintainers summit,
with a goal of producing a short guidance statement for all maintainers
who are responsible for approving and merging new bindings.
Longer term,
Mark Brown
said that one problem with the devicetree-discuss list was that
full patchsets get CCed there, so that people reading the list have
to wade through quite a bit of irrelevant email to find the added
device-tree bindings.
David Woodhouse argued that device-tree bindings should be OS-agnostic, and at the very least Linux-version-agnostic. He has heard rumors of people who must keep their device trees in sync with kernel versions, which makes him very sad. Linus Walleij responded with a cautionary tale about the different perspectives of embedded-systems manufacturers and the Linux kernel community, calling out this ELC 2013 presentation as one example of an attempt to standardize the typically home-brew nature of embedded images.