]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - Bindings/mfd/madera.txt
Import DTS files from Linux 5.7
[FreeBSD/FreeBSD.git] / Bindings / mfd / madera.txt
1 Cirrus Logic Madera class audio codecs Multi-Functional Device
2
3 These devices are audio SoCs with extensive digital capabilities and a range
4 of analogue I/O.
5
6 See also the child driver bindings in:
7 bindings/pinctrl/cirrus,madera-pinctrl.txt
8 bindings/regulator/arizona-regulator.txt
9 bindings/sound/madera.txt
10
11 Required properties:
12
13   - compatible : One of the following chip-specific strings:
14         "cirrus,cs47l15"
15         "cirrus,cs47l35"
16         "cirrus,cs47l85"
17         "cirrus,cs47l90"
18         "cirrus,cs47l91"
19         "cirrus,cs42l92"
20         "cirrus,cs47l92"
21         "cirrus,cs47l93"
22         "cirrus,wm1840"
23
24   - reg : I2C slave address when connected using I2C, chip select number when
25     using SPI.
26
27   - DCVDD-supply : Power supply for the device as defined in
28     bindings/regulator/regulator.txt
29     Mandatory on CS47L15, CS47L35, CS47L90, CS47L91, CS42L92, CS47L92, CS47L93
30     Optional on CS47L85, WM1840
31
32   - AVDD-supply, DBVDD1-supply, DBVDD2-supply, CPVDD1-supply, CPVDD2-supply :
33     Power supplies for the device
34
35   - DBVDD3-supply, DBVDD4-supply : Power supplies for the device
36     (CS47L85, CS47L90, CS47L91, WM1840)
37
38   - SPKVDDL-supply, SPKVDDR-supply : Power supplies for the device
39     (CS47L85, WM1840)
40
41   - SPKVDD-supply : Power supply for the device
42     (CS47L15, CS47L35)
43
44   - interrupt-controller : Indicates that this device is an interrupt controller
45
46   - #interrupt-cells: the number of cells to describe an IRQ, must be 2.
47     The first cell is the IRQ number.
48     The second cell is the flags, encoded as the trigger masks from
49     bindings/interrupt-controller/interrupts.txt
50
51   - gpio-controller : Indicates this device is a GPIO controller.
52
53   - #gpio-cells : Must be 2. The first cell is the pin number. The second cell
54     is reserved for future use and must be zero
55
56   - interrupt-parent : The parent interrupt controller.
57
58   - interrupts : The interrupt line the /IRQ signal for the device is
59     connected to.
60
61 Optional properties:
62
63   - MICVDD-supply : Power supply, only need to be specified if
64     powered externally
65
66   - reset-gpios : One entry specifying the GPIO controlling /RESET.
67     As defined in bindings/gpio.txt.
68     Although optional, it is strongly recommended to use a hardware reset
69
70   - clocks: Should reference the clocks supplied on MCLK1, MCLK2 and MCLK3
71   - clock-names: May contain up to three strings:
72       "mclk1" for the clock supplied on MCLK1, recommended to be a high
73       quality audio reference clock
74       "mclk2" for the clock supplied on MCLK2, required to be an always on
75       32k clock
76       "mclk3" for the clock supplied on MCLK3
77
78   - MICBIASx : Initial data for the MICBIAS regulators, as covered in
79     Documentation/devicetree/bindings/regulator/regulator.txt.
80     One for each MICBIAS generator (MICBIAS1, MICBIAS2, ...)
81     (all codecs)
82
83     One for each output pin (MICBIAS1A, MIBCIAS1B, MICBIAS2A, ...)
84     (all except CS47L85, WM1840)
85
86     The following following additional property is supported for the generator
87     nodes:
88       - cirrus,ext-cap : Set to 1 if the MICBIAS has external decoupling
89         capacitors attached.
90
91 Optional child nodes:
92     micvdd : Node containing initialization data for the micvdd regulator
93     See bindings/regulator/arizona-regulator.txt
94
95     ldo1 : Node containing initialization data for the LDO1 regulator
96     See bindings/regulator/arizona-regulator.txt
97     (cs47l85, wm1840)
98
99 Example:
100
101 cs47l85@0 {
102         compatible = "cirrus,cs47l85";
103         reg = <0>;
104
105         reset-gpios = <&gpio 0>;
106
107         interrupt-controller;
108         #interrupt-cells = <2>;
109         interrupts = <&host_irq1>;
110         interrupt-parent = <&gic>;
111
112         gpio-controller;
113         #gpio-cells = <2>;
114 };