Lines Matching full:devicetree

3 Devicetree API
6 This is a reference page for the ``<zephyr/devicetree.h>`` API. The API is macro
30 A *node identifier* is a way to refer to a devicetree node at C preprocessor
32 devicetree data in C rvalue form using, for example, the
33 :ref:`devicetree-property-access` API.
36 identifiers for other devicetree nodes using :c:func:`DT_PATH`,
45 .. doxygengroup:: devicetree-generic-id
53 There are special-purpose APIs for accessing the :ref:`devicetree-ranges-property`,
54 :ref:`devicetree-reg-property` and :ref:`devicetree-interrupts-property`.
59 .. doxygengroup:: devicetree-generic-prop
66 Use these APIs instead of :ref:`devicetree-property-access` to access the
68 devicetree specification, these macros can be used even for nodes without
76 .. doxygengroup:: devicetree-ranges-prop
83 Use these APIs instead of :ref:`devicetree-property-access` to access the
85 devicetree specification, these macros can be used even for nodes without
88 .. doxygengroup:: devicetree-reg-prop
95 Use these APIs instead of :ref:`devicetree-property-access` to access the
98 Because this property's semantics are defined by the devicetree specification,
102 .. doxygengroup:: devicetree-interrupts-prop
109 devicetree node.
115 .. doxygengroup:: devicetree-generic-foreach
126 .. doxygengroup:: devicetree-generic-exist
133 The ``devicetree.h`` API has some support for tracking dependencies between
135 devicetree nodes, which is defined as the `transitive closure
144 A *dependency ordering* of a devicetree is a list of its nodes, where each node
147 distinct devicetree nodes ``n1`` and ``n2`` with dependency ordinals ``d1`` and
154 The Zephyr build system chooses a dependency ordering of the final devicetree
163 .. doxygengroup:: devicetree-dep-ord
168 Zephyr's devicetree bindings language supports a ``bus:`` key which allows
173 .. doxygengroup:: devicetree-generic-bus
182 implements support for. Here is an example devicetree fragment:
184 .. code-block:: devicetree
208 :ref:`devicetree-generic-apis`. The equivalent generic API can be found by
220 specific hardware; these are documented in :ref:`devicetree-hw-api`.
222 .. doxygengroup:: devicetree-inst
229 The following APIs can also be used by including ``<devicetree.h>``;
240 .. doxygengroup:: devicetree-can
248 .. doxygengroup:: devicetree-clocks
256 .. doxygengroup:: devicetree-dmas
267 .. doxygengroup:: devicetree-fixed-partition
277 .. doxygengroup:: devicetree-gpio
285 .. doxygengroup:: devicetree-io-channels
295 .. doxygengroup:: devicetree-mbox
304 Devicetree nodes may have properties which specify pin control (sometimes known
325 .. doxygengroup:: devicetree-pinctrl
333 .. doxygengroup:: devicetree-pwms
341 .. doxygengroup:: devicetree-reset-controller
349 .. doxygengroup:: devicetree-spi
360 .. doxygengroup:: devicetree-generic-chosen
371 predates devicetree support in Zephyr. In other cases, there is no Kconfig
372 option, and the devicetree node is used directly in the source code to select a