blob: ecfa7a5768663bf029a6c0685beea58f846289e2 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/sound/realtek,rt5682s.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Realtek rt5682s codec
8
9maintainers:
10 - Derek Fang <derek.fang@realtek.com>
11
12description: |
13 Rt5682s(ALC5682I-VS) is a rt5682i variant which supports I2C only.
14
15allOf:
16 - $ref: dai-common.yaml#
17
18properties:
19 compatible:
20 const: realtek,rt5682s
21
22 reg:
23 maxItems: 1
24 description: I2C address of the device.
25
26 interrupts:
27 maxItems: 1
28 description: The CODEC's interrupt output.
29
30 realtek,dmic1-data-pin:
31 $ref: /schemas/types.yaml#/definitions/uint32
32 enum:
33 - 0 # dmic1 data is not used
34 - 1 # using GPIO2 pin as dmic1 data pin
35 - 2 # using GPIO5 pin as dmic1 data pin
36 description: |
37 Specify which GPIO pin be used as DMIC1 data pin.
38
39 realtek,dmic1-clk-pin:
40 $ref: /schemas/types.yaml#/definitions/uint32
41 enum:
42 - 0 # dmic1 clk is not used
43 - 1 # using GPIO1 pin as dmic1 clock pin
44 - 2 # using GPIO3 pin as dmic1 clock pin
45 description: |
46 Specify which GPIO pin be used as DMIC1 clk pin.
47
48 realtek,jd-src:
49 $ref: /schemas/types.yaml#/definitions/uint32
50 enum:
51 - 0 # No JD is used
52 - 1 # using JD1 as JD source
53 description: |
54 Specify which JD source be used.
55
56 realtek,ldo1-en-gpios:
57 description: |
58 The GPIO that controls the CODEC's LDO1_EN pin.
59
60 realtek,dmic-clk-rate-hz:
61 description: |
62 Set the clock rate (hz) for the requirement of the particular DMIC.
63
64 realtek,dmic-delay-ms:
65 description: |
66 Set the delay time (ms) for the requirement of the particular DMIC.
67
68 realtek,amic-delay-ms:
69 description: |
70 Set the delay time (ms) for the requirement of the particular platform or AMIC.
71
72 realtek,dmic-clk-driving-high:
73 type: boolean
74 description: |
75 Set the high driving of the DMIC clock out.
76
77 clocks:
78 items:
79 - description: phandle and clock specifier for codec MCLK.
80
81 clock-names:
82 items:
83 - const: mclk
84
85 "#clock-cells":
86 const: 1
87
88 clock-output-names:
89 minItems: 2
90 maxItems: 2
91 description: Name given for DAI word clock and bit clock outputs.
92
93 "#sound-dai-cells":
94 const: 1
95
96 AVDD-supply:
97 description: Regulator supplying analog power through the AVDD pin.
98
99 MICVDD-supply:
100 description: Regulator supplying power for the microphone bias through the
101 MICVDD pin.
102
103 DBVDD-supply:
104 description: Regulator supplying I/O power through the DBVDD pin.
105
106 LDO1-IN-supply:
107 description: Regulator supplying power to the digital core and charge pump
108 through the LDO1_IN pin.
109
110unevaluatedProperties: false
111
112required:
113 - compatible
114 - reg
115 - AVDD-supply
116 - MICVDD-supply
117 - DBVDD-supply
118 - LDO1-IN-supply
119
120examples:
121 - |
122 #include <dt-bindings/gpio/gpio.h>
123 #include <dt-bindings/interrupt-controller/irq.h>
124
125 i2c {
126 #address-cells = <1>;
127 #size-cells = <0>;
128
129 codec@1a {
130 compatible = "realtek,rt5682s";
131 reg = <0x1a>;
132 interrupts = <6 IRQ_TYPE_LEVEL_HIGH>;
133 realtek,ldo1-en-gpios =
134 <&gpio 2 GPIO_ACTIVE_HIGH>;
135 realtek,dmic1-data-pin = <1>;
136 realtek,dmic1-clk-pin = <1>;
137 realtek,jd-src = <1>;
138
139 #clock-cells = <1>;
140 clock-output-names = "rt5682-dai-wclk", "rt5682-dai-bclk";
141
142 clocks = <&osc>;
143 clock-names = "mclk";
144
145 AVDD-supply = <&avdd_reg>;
146 MICVDD-supply = <&micvdd_reg>;
147 DBVDD-supply = <&dbvdd_reg>;
148 LDO1-IN-supply = <&ldo1_in_reg>;
149 };
150 };