About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / devicetree / bindings / ABI.txt




Custom Search

Based on kernel version 3.16. Page generated on 2014-08-06 21:36 EST.

1	
2	  Devicetree (DT) ABI
3	
4	I. Regarding stable bindings/ABI, we quote from the 2013 ARM mini-summit
5	   summary document:
6	
7	     "That still leaves the question of, what does a stable binding look
8	     like?  Certainly a stable binding means that a newer kernel will not
9	     break on an older device tree, but that doesn't mean the binding is
10	     frozen for all time. Grant said there are ways to change bindings that
11	     don't result in breakage. For instance, if a new property is added,
12	     then default to the previous behaviour if it is missing. If a binding
13	     truly needs an incompatible change, then change the compatible string
14	     at the same time.  The driver can bind against both the old and the
15	     new. These guidelines aren't new, but they desperately need to be
16	     documented."
17	
18	II.  General binding rules
19	
20	  1) Maintainers, don't let perfect be the enemy of good.  Don't hold up a
21	     binding because it isn't perfect.
22	
23	  2) Use specific compatible strings so that if we need to add a feature (DMA)
24	     in the future, we can create a new compatible string.  See I.
25	
26	  3) Bindings can be augmented, but the driver shouldn't break when given
27	     the old binding. ie. add additional properties, but don't change the
28	     meaning of an existing property. For drivers, default to the original
29	     behaviour when a newly added property is missing.
30	
31	  4) Don't submit bindings for staging or unstable.  That will be decided by
32	     the devicetree maintainers *after* discussion on the mailinglist.
33	
34	III. Notes
35	
36	  1) This document is intended as a general familiarization with the process as
37	     decided at the 2013 Kernel Summit.  When in doubt, the current word of the
38	     devicetree maintainers overrules this document.  In that situation, a patch
39	     updating this document would be appreciated.
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.