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/sound/wlf,arizona.yaml#
18 - $ref: /schemas/regulator/wlf,arizona.yaml#
19 - $ref: /schemas/extcon/wlf,arizona.yaml#
35 Digital power supply, used internally to generate DCVDD when
87 Mono speaker driver power supply.
95 Left speaker driver power supply.
99 Right speaker driver power supply.
122 Analogue power supply.
126 Charge pump power supply.
130 Databus power supply.
134 Digital power supply, normally supplied internally except on cs47l24,
135 wm1831 where it is mandatory.
139 Microphone power supply, normally supplied internally except on
140 cs47l24, wm1831 where it is mandatory.
142 gpio-controller: true
146 The first cell is the pin number and the second cell is used to
147 specify optional parameters.
152 A list of GPIO configuration register values. Defines for the
153 appropriate values can found in dt-bindings/mfd/arizona.h. If
154 absent, no configuration of these registers is performed. If any
155 entry has a value that is out of range for a 16 bit register then the
156 chip default will be used. If present exactly five values must be
158 $ref: "/schemas/types.yaml#/definitions/uint32-array"
162 interrupt-controller: true
166 The first cell is the IRQ number. The second cell is the flags,
167 encoded as trigger masks.
175 Should reference the clocks supplied on MCLK1 and MCLK2.
181 Should contains two strings mclk1 for the clock supplied on MCLK1,
182 recommended to be a high quality audio reference clock mclk2 for the
183 clock supplied on MCLK2, recommended to be an always on 32k clock.
198 GPIO specifier for the GPIO controlling RESET
200 $ref: /schemas/types.yaml#/definitions/phandle-array
210 - interrupt-controller
214 unevaluatedProperties: false
218 #include <dt-bindings/mfd/arizona.h>
220 #address-cells = <1>;
222 reg = <0xe0004000 0x1000>;
225 compatible = "wlf,wm5102";
228 reset-gpios = <&gpio 0>;
229 wlf,ldoena = <&gpio 1>;
231 AVDD-supply = <&vdd1v8>;
232 DBVDD1-supply = <&vdd1v8>;
233 DBVDD2-supply = <&vdd1v8>;
234 DBVDD3-supply = <&vdd1v8>;
235 CPVDD-supply = <&vdd1v8>;
236 LDOVDD-supply = <&vdd1v8>;
237 SPKVDDL-supply = <&vdd5v>;
238 SPKVDDR-supply = <&vdd5v>;
241 interrupt-controller;
242 #interrupt-cells = <2>;
243 interrupt-parent = <&gic>;
248 #sound-dai-cells = <1>;
250 wlf,gpio-defaults = <
251 ARIZONA_GP_FN_TXLRCLK
258 clocks = <&clks 0>, <&clks 1>;
259 clock-names = "mclk1", "mclk2";
261 wlf,inmode = <ARIZONA_INMODE_DIFF ARIZONA_INMODE_DMIC>;
262 wlf,dmic-ref = <ARIZONA_DMIC_MICBIAS1 ARIZONA_DMIC_MICBIAS3>;
268 wlf,micd-software-compare;
269 wlf,micd-detect-debounce = <0>;
270 wlf,micd-pol-gpio = <&codec 2 0>;
271 wlf,micd-rate = <ARIZONA_MICD_TIME_8MS>;
272 wlf,micd-dbtime = <4>;
273 wlf,micd-timeout-ms = <100>;
274 wlf,micd-force-micbias;
275 wlf,micd-configs = <0 ARIZONA_DMIC_MICBIAS1 0>,
276 <0x2000 ARIZONA_DMIC_MICBIAS2 1>;
278 wlf,gpsw = <ARIZONA_GPSW_OPEN>;