blob: 148ef621a5e5d9b8c69fd75fa370392d440f1b1b [file] [log] [blame]
Richard Fitzgerald9a65a6d2015-11-03 15:08:33 +00001Cirrus Logic/Wolfson Microelectronics Arizona class audio SoCs
Mark Brownd7810092013-03-25 00:11:27 +00002
Kees Cook08559652016-04-26 16:41:21 -07003These devices are audio SoCs with extensive digital capabilities and a range
Mark Brownd7810092013-03-25 00:11:27 +00004of analogue I/O.
5
6Required properties:
7
Charles Keepax72e6e792014-03-19 10:18:54 +00008 - compatible : One of the following chip-specific strings:
Richard Fitzgerald9a65a6d2015-11-03 15:08:33 +00009 "cirrus,cs47l24"
Charles Keepax72e6e792014-03-19 10:18:54 +000010 "wlf,wm5102"
11 "wlf,wm5110"
Richard Fitzgeraldc4ac37192015-01-17 15:21:23 +000012 "wlf,wm8280"
Charles Keepax72e6e792014-03-19 10:18:54 +000013 "wlf,wm8997"
Richard Fitzgeraldb64610d2015-05-01 16:15:19 +010014 "wlf,wm8998"
15 "wlf,wm1814"
Richard Fitzgerald9a65a6d2015-11-03 15:08:33 +000016 "wlf,wm1831"
Richard Fitzgeraldb64610d2015-05-01 16:15:19 +010017
Mark Brownd7810092013-03-25 00:11:27 +000018 - reg : I2C slave address when connected using I2C, chip select number when
19 using SPI.
20
21 - interrupts : The interrupt line the /IRQ signal for the device is
22 connected to.
23 - interrupt-controller : Arizona class devices contain interrupt controllers
24 and may provide interrupt services to other devices.
Mark Brownd7810092013-03-25 00:11:27 +000025 - #interrupt-cells: the number of cells to describe an IRQ, this should be 2.
26 The first cell is the IRQ number.
27 The second cell is the flags, encoded as the trigger masks from
Andrew F. Davis51669f82015-09-21 11:25:40 -050028 Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
Mark Brownd7810092013-03-25 00:11:27 +000029
30 - gpio-controller : Indicates this device is a GPIO controller.
31 - #gpio-cells : Must be 2. The first cell is the pin number and the
Charles Keepax7a456cb2017-05-23 15:47:32 +010032 second cell is used to specify optional parameters, see ../gpio/gpio.txt
33 for details.
Mark Brownd7810092013-03-25 00:11:27 +000034
Richard Fitzgeraldc4ac37192015-01-17 15:21:23 +000035 - AVDD-supply, DBVDD1-supply, CPVDD-supply : Power supplies for the device,
36 as covered in Documentation/devicetree/bindings/regulator/regulator.txt
37
38 - DBVDD2-supply, DBVDD3-supply : Additional databus power supplies (wm5102,
Richard Fitzgeraldb64610d2015-05-01 16:15:19 +010039 wm5110, wm8280, wm8998, wm1814)
Richard Fitzgeraldc4ac37192015-01-17 15:21:23 +000040
41 - SPKVDDL-supply, SPKVDDR-supply : Speaker driver power supplies (wm5102,
Richard Fitzgeraldb64610d2015-05-01 16:15:19 +010042 wm5110, wm8280, wm8998, wm1814)
Richard Fitzgeraldc4ac37192015-01-17 15:21:23 +000043
44 - SPKVDD-supply : Speaker driver power supply (wm8997)
Mark Brownd7810092013-03-25 00:11:27 +000045
Richard Fitzgerald9a65a6d2015-11-03 15:08:33 +000046 - DCVDD-supply : Main power supply (cs47l24, wm1831)
47
48 - MICVDD-supply : Microphone power supply (cs47l24, wm1831)
49
Mark Brownd7810092013-03-25 00:11:27 +000050Optional properties:
51
Charles Keepaxfced2962018-05-09 11:23:48 +010052 - reset-gpios : GPIO specifier for the GPIO controlling /RESET
Mark Brownd7810092013-03-25 00:11:27 +000053
Charles Keepax0b819952016-01-08 11:29:42 +000054 - clocks: Should reference the clocks supplied on MCLK1 and MCLK2
55 - clock-names: Should contains two strings:
56 "mclk1" for the clock supplied on MCLK1, recommended to be a high
57 quality audio reference clock
58 "mclk2" for the clock supplied on MCLK2, recommended to be an always on
59 32k clock
60
Charles Keepax49010332015-02-25 15:37:13 +000061 - wlf,gpio-defaults : A list of GPIO configuration register values. Defines
62 for the appropriate values can found in <dt-bindings/mfd/arizona.txt>. If
63 absent, no configuration of these registers is performed. If any entry has
64 a value that is out of range for a 16 bit register then the chip default
65 will be used. If present exactly five values must be specified.
Mark Brownd7810092013-03-25 00:11:27 +000066
Charles Keepax819b2dd2014-07-10 17:04:09 +010067 - DCVDD-supply, MICVDD-supply : Power supplies, only need to be specified if
68 they are being externally supplied. As covered in
Charles Keepaxa6d97c12014-07-10 17:04:08 +010069 Documentation/devicetree/bindings/regulator/regulator.txt
Richard Fitzgerald9a65a6d2015-11-03 15:08:33 +000070 (wm5102, wm5110, wm8280, wm8997, wm8998, wm1814)
Charles Keepaxa6d97c12014-07-10 17:04:08 +010071
Charles Keepaxfced2962018-05-09 11:23:48 +010072Deprecated properties:
73
74 - wlf,reset : GPIO specifier for the GPIO controlling /RESET
75
Charles Keepaxf2f48a52015-10-27 16:01:58 +000076Also see child specific device properties:
77 Regulator - ../regulator/arizona-regulator.txt
78 Extcon - ../extcon/extcon-arizona.txt
Charles Keepax689f7a72018-09-17 16:33:22 +010079 Sound - ../sound/wlf,arizona.txt
Charles Keepaxa6d97c12014-07-10 17:04:08 +010080
Mark Brownd7810092013-03-25 00:11:27 +000081Example:
82
83codec: wm5102@1a {
84 compatible = "wlf,wm5102";
85 reg = <0x1a>;
86 interrupts = <347>;
Charles Keepax72e6e792014-03-19 10:18:54 +000087 interrupt-controller;
Mark Brownd7810092013-03-25 00:11:27 +000088 #interrupt-cells = <2>;
89 interrupt-parent = <&gic>;
90
91 gpio-controller;
92 #gpio-cells = <2>;
93
94 wlf,gpio-defaults = <
Charles Keepax49010332015-02-25 15:37:13 +000095 ARIZONA_GP_FN_TXLRCLK
96 ARIZONA_GP_DEFAULT
97 ARIZONA_GP_DEFAULT
98 ARIZONA_GP_DEFAULT
99 ARIZONA_GP_DEFAULT
Mark Brownd7810092013-03-25 00:11:27 +0000100 >;
101};