blob: 7d44eae7ab0b951d2ea77889cee1c6733978dd0b [file] [log] [blame]
Jason Cooper2a933002013-12-17 16:59:40 +00001
2 Submitting devicetree (DT) binding patches
3
4I. For patch submitters
5
6 0) Normal patch submission rules from Documentation/SubmittingPatches
7 applies.
8
9 1) The Documentation/ portion of the patch should be a separate patch.
10
11 2) Submit the entire series to the devicetree mailinglist at
12
13 devicetree@vger.kernel.org
14
Matt Porterd1e9fa92015-03-05 10:53:11 -050015 and Cc: the DT maintainers. Use scripts/get_maintainer.pl to identify
16 all of the DT maintainers.
17
Javier Martinez Canillasef0b97e2014-10-09 20:24:07 +020018 3) The Documentation/ portion of the patch should come in the series before
19 the code implementing the binding.
20
Paul Walmsley10638a42015-01-30 15:11:04 -070021 4) Any compatible strings used in a chip or board DTS file must be
22 previously documented in the corresponding DT binding text file
23 in Documentation/devicetree/bindings. This rule applies even if
24 the Linux device driver does not yet match on the compatible
25 string. [ checkpatch will emit warnings if this step is not
26 followed as of commit bff5da4335256513497cc8c79f9a9d1665e09864
27 ("checkpatch: add DT compatible string documentation checks"). ]
28
29 5) The wildcard "<chip>" may be used in compatible strings, as in
30 the following example:
31
32 - compatible: Must contain '"nvidia,<chip>-pcie",
33 "nvidia,tegra20-pcie"' where <chip> is tegra30, tegra132, ...
34
35 As in the above example, the known values of "<chip>" should be
36 documented if it is used.
37
38 6) If a documented compatible string is not yet matched by the
39 driver, the documentation should also include a compatible
40 string that is matched by the driver (as in the "nvidia,tegra20-pcie"
41 example above).
42
43
Jason Cooper2a933002013-12-17 16:59:40 +000044II. For kernel maintainers
45
46 1) If you aren't comfortable reviewing a given binding, reply to it and ask
47 the devicetree maintainers for guidance. This will help them prioritize
48 which ones to review and which ones are ok to let go.
49
50 2) For driver (not subsystem) bindings: If you are comfortable with the
51 binding, and it hasn't received an Acked-by from the devicetree
52 maintainers after a few weeks, go ahead and take it.
53
54 Subsystem bindings (anything affecting more than a single device)
55 then getting a devicetree maintainer to review it is required.
56
57 3) For a series going though multiple trees, the binding patch should be
58 kept with the driver using the binding.
59
60III. Notes
61
62 0) Please see ...bindings/ABI.txt for details regarding devicetree ABI.
63
64 1) This document is intended as a general familiarization with the process as
65 decided at the 2013 Kernel Summit. When in doubt, the current word of the
66 devicetree maintainers overrules this document. In that situation, a patch
67 updating this document would be appreciated.