Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml
Extension
.yaml
Size
1957 bytes
Lines
80
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: configuration, schema, or hardware description
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/multiplexer/io-channel-mux.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: I/O channel multiplexer

maintainers:
  - Peter Rosin <peda@axentia.se>

description: |
  If a multiplexer is used to select which hardware signal is fed to
  e.g. an ADC channel, these bindings describe that situation.

  For each non-empty string in the channels property, an io-channel will be
  created. The number of this io-channel is the same as the index into the list
  of strings in the channels property, and also matches the mux controller
  state. The mux controller state is described in
  Documentation/devicetree/bindings/mux/mux-controller.yaml

properties:

  compatible:
    const: io-channel-mux

  io-channels:
    maxItems: 1
    description: Channel node of the parent channel that has multiplexed input.

  io-channel-names:
    const: parent

  mux-controls: true
  mux-control-names: true

  channels:
    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
    description:
      List of strings, labeling the mux controller states. An empty
      string for a state means that the channel is not available.

  settle-time-us:
    default: 0
    description:
      Time required for analog signals to settle after muxing.

  "#io-channel-cells":
    const: 1

required:
  - compatible
  - io-channels
  - io-channel-names
  - mux-controls
  - channels

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    mux: mux-controller {
      compatible = "gpio-mux";
      #mux-control-cells = <0>;

      mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
                  <&pioA 1 GPIO_ACTIVE_HIGH>;
    };

Annotation

Implementation Notes