Commit e9ab77a4 authored by Jonathan Cameron's avatar Jonathan Cameron Committed by Rob Herring

dt-bindings: iio: multiplexer: Convert io-channel-mux bindings to DT schema

Straight conversion of the txt file using the mux-consumer.yaml
binding now that is available.
Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Peter Rosin <peda@axentia.se>
[robh: Drop quotes and $ref for mux-controls]
Signed-off-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210522112908.1611389-3-jic23@kernel.org
parent f22107b9
I/O channel multiplexer bindings
If a multiplexer is used to select which hardware signal is fed to
e.g. an ADC channel, these bindings describe that situation.
Required properties:
- compatible : "io-channel-mux"
- io-channels : Channel node of the parent channel that has multiplexed
input.
- io-channel-names : Should be "parent".
- #address-cells = <1>;
- #size-cells = <0>;
- mux-controls : Mux controller node to use for operating the mux
- channels : List of strings, labeling the mux controller states.
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
../mux/mux-controller.yaml
Example:
mux: mux-controller {
compatible = "gpio-mux";
#mux-control-cells = <0>;
mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
<&pioA 1 GPIO_ACTIVE_HIGH>;
};
adc-mux {
compatible = "io-channel-mux";
io-channels = <&adc 0>;
io-channel-names = "parent";
mux-controls = <&mux>;
channels = "sync", "in", "system-regulator";
};
# 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 bindings
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/string-array
description:
List of strings, labeling the mux controller states.
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>;
};
adc-mux {
compatible = "io-channel-mux";
io-channels = <&adc 0>;
io-channel-names = "parent";
mux-controls = <&mux>;
channels = "sync", "in", "system-regulator";
};
...
...@@ -8858,7 +8858,7 @@ IIO MULTIPLEXER ...@@ -8858,7 +8858,7 @@ IIO MULTIPLEXER
M: Peter Rosin <peda@axentia.se> M: Peter Rosin <peda@axentia.se>
L: linux-iio@vger.kernel.org L: linux-iio@vger.kernel.org
S: Maintained S: Maintained
F: Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.txt F: Documentation/devicetree/bindings/iio/multiplexer/io-channel-mux.yaml
F: drivers/iio/multiplexer/iio-mux.c F: drivers/iio/multiplexer/iio-mux.c
IIO SCMI BASED DRIVER IIO SCMI BASED DRIVER
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment