1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mux/mux-consumer.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Common multiplexer controller consumer bindings
8
9maintainers:
10  - Peter Rosin <peda@axentia.se>
11
12description: |
13  Mux controller consumers should specify a list of mux controllers that they
14  want to use with a property containing a 'mux-ctrl-list':
15
16    mux-ctrl-list ::= <single-mux-ctrl> [mux-ctrl-list]
17    single-mux-ctrl ::= <mux-ctrl-phandle> [mux-ctrl-specifier]
18    mux-ctrl-phandle : phandle to mux controller node
19    mux-ctrl-specifier : array of #mux-control-cells specifying the
20                         given mux controller (controller specific)
21
22  Mux controller properties should be named "mux-controls". The exact meaning of
23  each mux controller property must be documented in the device tree binding for
24  each consumer. An optional property "mux-control-names" may contain a list of
25  strings to label each of the mux controllers listed in the "mux-controls"
26  property.
27
28  mux-ctrl-specifier typically encodes the chip-relative mux controller number.
29  If the mux controller chip only provides a single mux controller, the
30  mux-ctrl-specifier can typically be left out.
31
32select: true
33
34properties:
35  mux-controls:
36    $ref: /schemas/types.yaml#/definitions/phandle-array
37
38  mux-control-names:
39    description:
40      Devices that use more than a single mux controller can use the
41      "mux-control-names" property to map the name of the requested mux
42      controller to an index into the list given by the "mux-controls" property.
43
44additionalProperties: true
45
46...
47