1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
4 $id: http://devicetree.org/schemas/mfd/wlf,arizona.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Cirrus Logic/Wolfson Microelectronics Arizona class audio SoCs
10 - patches@opensource.cirrus.com
13 These devices are audio SoCs with extensive digital capabilities and a
14 range of analogue I/O.
17 - $ref: /schemas/spi/spi-peripheral-props.yaml
18 - $ref: /schemas/sound/wlf,arizona.yaml#
19 - $ref: /schemas/regulator/wlf,arizona.yaml#
20 - $ref: /schemas/extcon/wlf,arizona.yaml#
36 Digital power supply, used internally to generate DCVDD when
88 Mono speaker driver power supply.
96 Left speaker driver power supply.
100 Right speaker driver power supply.
123 Analogue power supply.
127 Charge pump power supply.
131 Databus power supply.
135 Digital power supply, normally supplied internally except on cs47l24,
136 wm1831 where it is mandatory.
140 Microphone power supply, normally supplied internally except on
141 cs47l24, wm1831 where it is mandatory.
143 gpio-controller: true
147 The first cell is the pin number and the second cell is used to
148 specify optional parameters.
153 A list of GPIO configuration register values. Defines for the
154 appropriate values can found in dt-bindings/mfd/arizona.h. If
155 absent, no configuration of these registers is performed. If any
156 entry has a value that is out of range for a 16 bit register then the
157 chip default will be used. If present exactly five values must be
159 $ref: "/schemas/types.yaml#/definitions/uint32-array"
163 interrupt-controller: true
167 The first cell is the IRQ number. The second cell is the flags,
168 encoded as trigger masks.
176 Should reference the clocks supplied on MCLK1 and MCLK2.
182 Should contains two strings mclk1 for the clock supplied on MCLK1,
183 recommended to be a high quality audio reference clock mclk2 for the
184 clock supplied on MCLK2, recommended to be an always on 32k clock.
199 GPIO specifier for the GPIO controlling RESET
201 $ref: /schemas/types.yaml#/definitions/phandle-array
211 - interrupt-controller
215 unevaluatedProperties: false
219 #include <dt-bindings/mfd/arizona.h>
221 #address-cells = <1>;
223 reg = <0xe0004000 0x1000>;
226 compatible = "wlf,wm5102";
229 reset-gpios = <&gpio 0>;
230 wlf,ldoena = <&gpio 1>;
232 AVDD-supply = <&vdd1v8>;
233 DBVDD1-supply = <&vdd1v8>;
234 DBVDD2-supply = <&vdd1v8>;
235 DBVDD3-supply = <&vdd1v8>;
236 CPVDD-supply = <&vdd1v8>;
237 LDOVDD-supply = <&vdd1v8>;
238 SPKVDDL-supply = <&vdd5v>;
239 SPKVDDR-supply = <&vdd5v>;
242 interrupt-controller;
243 #interrupt-cells = <2>;
244 interrupt-parent = <&gic>;
249 #sound-dai-cells = <1>;
251 wlf,gpio-defaults = <
252 ARIZONA_GP_FN_TXLRCLK
259 clocks = <&clks 0>, <&clks 1>;
260 clock-names = "mclk1", "mclk2";
262 wlf,inmode = <ARIZONA_INMODE_DIFF ARIZONA_INMODE_DMIC>;
263 wlf,dmic-ref = <ARIZONA_DMIC_MICBIAS1 ARIZONA_DMIC_MICBIAS3>;
269 wlf,micd-software-compare;
270 wlf,micd-detect-debounce = <0>;
271 wlf,micd-pol-gpio = <&codec 2 0>;
272 wlf,micd-rate = <ARIZONA_MICD_TIME_8MS>;
273 wlf,micd-dbtime = <4>;
274 wlf,micd-timeout-ms = <100>;
275 wlf,micd-force-micbias;
276 wlf,micd-configs = <0 ARIZONA_DMIC_MICBIAS1 0>,
277 <0x2000 ARIZONA_DMIC_MICBIAS2 1>;
279 wlf,gpsw = <ARIZONA_GPSW_OPEN>;