Signed-off-by: Peter Rosin <p...@axentia.se>
---
 .../bindings/iio/multiplexer/iio-mux.txt           | 40 ++++++++++++++++++++++
 MAINTAINERS                                        |  6 ++++
 2 files changed, 46 insertions(+)
 create mode 100644 
Documentation/devicetree/bindings/iio/multiplexer/iio-mux.txt

diff --git a/Documentation/devicetree/bindings/iio/multiplexer/iio-mux.txt 
b/Documentation/devicetree/bindings/iio/multiplexer/iio-mux.txt
new file mode 100644
index 000000000000..8080cf790d82
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/multiplexer/iio-mux.txt
@@ -0,0 +1,40 @@
+IIO 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 : "iio-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.
+
+The multiplexer state as described in ../misc/mux-controller.txt
+
+For each non-empty string in the channels property, an iio channel will
+be created. The number of this iio channel is the same as the index into
+the list of strings in the channels property, and also matches the mux
+controller state.
+
+Example:
+       mux: mux-controller {
+               compatible = "mux-gpio";
+               #mux-control-cells = <0>;
+
+               mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
+                           <&pioA 1 GPIO_ACTIVE_HIGH>;
+       };
+
+       adc-mux {
+               compatible = "iio-mux";
+               io-channels = <&adc 0>;
+               io-channel-names = "parent";
+
+               mux-controls = <&mux>;
+
+               channels = "sync", "in", system-regulator";
+       };
diff --git a/MAINTAINERS b/MAINTAINERS
index dc7498682752..77045ae15865 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6234,6 +6234,12 @@ F:       
Documentation/ABI/testing/sysfs-bus-iio-adc-envelope-detector
 F:     Documentation/devicetree/bindings/iio/adc/envelope-detector.txt
 F:     drivers/iio/adc/envelope-detector.c
 
+IIO MULTIPLEXER
+M:     Peter Rosin <p...@axentia.se>
+L:     linux-...@vger.kernel.org
+S:     Maintained
+F:     Documentation/devicetree/bindings/iio/multiplexer/iio-mux.txt
+
 IIO SUBSYSTEM AND DRIVERS
 M:     Jonathan Cameron <ji...@kernel.org>
 R:     Hartmut Knaack <knaac...@gmx.de>
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to