Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/sys/contrib/device-tree/Bindings/iio/multiplexer/io-channel-mux.txt
48523 views
1
I/O channel multiplexer bindings
2
3
If a multiplexer is used to select which hardware signal is fed to
4
e.g. an ADC channel, these bindings describe that situation.
5
6
Required properties:
7
- compatible : "io-channel-mux"
8
- io-channels : Channel node of the parent channel that has multiplexed
9
input.
10
- io-channel-names : Should be "parent".
11
- #address-cells = <1>;
12
- #size-cells = <0>;
13
- mux-controls : Mux controller node to use for operating the mux
14
- channels : List of strings, labeling the mux controller states.
15
16
For each non-empty string in the channels property, an io-channel will
17
be created. The number of this io-channel is the same as the index into
18
the list of strings in the channels property, and also matches the mux
19
controller state. The mux controller state is described in
20
../mux/mux-controller.txt
21
22
Example:
23
mux: mux-controller {
24
compatible = "gpio-mux";
25
#mux-control-cells = <0>;
26
27
mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
28
<&pioA 1 GPIO_ACTIVE_HIGH>;
29
};
30
31
adc-mux {
32
compatible = "io-channel-mux";
33
io-channels = <&adc 0>;
34
io-channel-names = "parent";
35
36
mux-controls = <&mux>;
37
38
channels = "sync", "in", "system-regulator";
39
};
40
41