Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/mux/mux-consumer.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Common multiplexer controller consumer bindings
0008 
0009 maintainers:
0010   - Peter Rosin <peda@axentia.se>
0011 
0012 description: |
0013   Mux controller consumers should specify a list of mux controllers that they
0014   want to use with a property containing a 'mux-ctrl-list':
0015 
0016     mux-ctrl-list ::= <single-mux-ctrl> [mux-ctrl-list]
0017     single-mux-ctrl ::= <mux-ctrl-phandle> [mux-ctrl-specifier]
0018     mux-ctrl-phandle : phandle to mux controller node
0019     mux-ctrl-specifier : array of #mux-control-cells specifying the
0020                          given mux controller (controller specific)
0021 
0022   Mux controller properties should be named "mux-controls". The exact meaning of
0023   each mux controller property must be documented in the device tree binding for
0024   each consumer. An optional property "mux-control-names" may contain a list of
0025   strings to label each of the mux controllers listed in the "mux-controls"
0026   property.
0027 
0028   If it is required to provide the state that the mux controller needs to
0029   be set to, the property "mux-states" must be used. An optional property
0030   "mux-state-names" can be used to provide a list of strings, to label
0031   each of the multiplixer states listed in the "mux-states" property.
0032 
0033   Properties "mux-controls" and "mux-states" can be used depending on how
0034   the consumers want to control the mux controller. If the consumer needs
0035   needs to set multiple states in a mux controller, then property
0036   "mux-controls" can be used. If the consumer needs to set the mux
0037   controller to a given state then property "mux-states" can be used.
0038 
0039   mux-ctrl-specifier typically encodes the chip-relative mux controller number.
0040   If the mux controller chip only provides a single mux controller, the
0041   mux-ctrl-specifier can typically be left out.
0042 
0043 select: true
0044 
0045 properties:
0046   mux-controls:
0047     $ref: /schemas/types.yaml#/definitions/phandle-array
0048 
0049   mux-states:
0050     $ref: /schemas/types.yaml#/definitions/phandle-array
0051 
0052   mux-control-names:
0053     description:
0054       Devices that use more than a single mux controller can use the
0055       "mux-control-names" property to map the name of the requested mux
0056       controller to an index into the list given by the "mux-controls" property.
0057 
0058   mux-state-names:
0059     description:
0060       Devices that use more than a single multiplexer state can use the
0061       "mux-state-names" property to map the name of the requested mux
0062       controller to an index into the list given by the "mux-states"
0063       property.
0064 
0065 additionalProperties: true
0066 
0067 ...