xref: /linux/Documentation/devicetree/bindings/sound/ti,pcm6240.yaml (revision 001821b0e79716c4e17c71d8e053a23599a7a508)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (C) 2022 - 2024 Texas Instruments Incorporated
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/sound/ti,pcm6240.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Texas Instruments PCM6240 Family Audio ADC/DAC
9
10maintainers:
11  - Shenghao Ding <shenghao-ding@ti.com>
12
13description: |
14  The PCM6240 Family is a big family of Audio ADC/DAC for
15  different Specifications, range from Personal Electric
16  to Automotive Electric, even some professional fields.
17
18  Specifications about the audio chip can be found at:
19    https://www.ti.com/lit/gpn/tlv320adc3120
20    https://www.ti.com/lit/gpn/tlv320adc5120
21    https://www.ti.com/lit/gpn/tlv320adc6120
22    https://www.ti.com/lit/gpn/dix4192
23    https://www.ti.com/lit/gpn/pcm1690
24    https://www.ti.com/lit/gpn/pcm3120-q1
25    https://www.ti.com/lit/gpn/pcm3140-q1
26    https://www.ti.com/lit/gpn/pcm5120-q1
27    https://www.ti.com/lit/gpn/pcm6120-q1
28    https://www.ti.com/lit/gpn/pcm6260-q1
29    https://www.ti.com/lit/gpn/pcm9211
30    https://www.ti.com/lit/gpn/pcmd3140
31    https://www.ti.com/lit/gpn/pcmd3180
32    https://www.ti.com/lit/gpn/taa5212
33    https://www.ti.com/lit/gpn/tad5212
34
35properties:
36  compatible:
37    description: |
38      ti,adc3120: Stereo-channel, 768-kHz, Burr-Brown™ audio analog-to-
39      digital converter (ADC) with 106-dB SNR.
40
41      ti,adc5120: 2-Channel, 768-kHz, Burr-Brown™ Audio ADC with 120-dB SNR.
42
43      ti,adc6120: Stereo-channel, 768-kHz, Burr-Brown™ audio analog-to-
44      digital converter (ADC) with 123-dB SNR.
45
46      ti,dix4192: 216-kHz digital audio converter with Quad-Channel In
47      and One-Channel Out.
48
49      ti,pcm1690: Automotive Catalog 113dB SNR 8-Channel Audio DAC with
50      Differential Outputs.
51
52      ti,pcm3120: Automotive, stereo, 106-dB SNR, 768-kHz, low-power
53      software-controlled audio ADC.
54
55      ti,pcm3140: Automotive, Quad-Channel, 768-kHz, Burr-Brown™ Audio ADC
56      with 106-dB SNR.
57
58      ti,pcm5120: Automotive, stereo, 120-dB SNR, 768-kHz, low-power
59      software-controlled audio ADC.
60
61      ti,pcm5140: Automotive, Quad-Channel, 768-kHz, Burr-Brown™ Audio ADC
62      with 120-dB SNR.
63
64      ti,pcm6120: Automotive, stereo, 123-dB SNR, 768-kHz, low-power
65      software-controlled audio ADC.
66
67      ti,pcm6140: Automotive, Quad-Channel, 768-kHz, Burr-Brown™ Audio ADC
68      with 123-dB SNR.
69
70      ti,pcm6240: Automotive 4-ch audio ADC with integrated programmable mic
71      bias, boost and input diagnostics.
72
73      ti,pcm6260: Automotive 6-ch audio ADC with integrated programmable mic
74      bias, boost and input diagnostics.
75
76      ti,pcm9211: 216-kHz digital audio converter With Stereo ADC and
77      Routing.
78
79      ti,pcmd3140: Four-channel PDM-input to TDM or I2S output converter.
80
81      ti,pcmd3180: Eight-channel pulse-density-modulation input to TDM or
82      I2S output converter.
83
84      ti,taa5212: Low-power high-performance stereo audio ADC with 118-dB
85      dynamic range.
86
87      ti,tad5212: Low-power stereo audio DAC with 120-dB dynamic range.
88    oneOf:
89      - items:
90          - enum:
91              - ti,adc3120
92              - ti,adc5120
93              - ti,pcm3120
94              - ti,pcm5120
95              - ti,pcm6120
96          - const: ti,adc6120
97      - items:
98          - enum:
99              - ti,pcmd512x
100              - ti,pcm9211
101              - ti,taa5212
102              - ti,tad5212
103          - const: ti,adc6120
104      - items:
105          - enum:
106              - ti,pcm3140
107              - ti,pcm5140
108              - ti,dix4192
109              - ti,pcm6140
110              - ti,pcm6260
111          - const: ti,pcm6240
112      - items:
113          - enum:
114              - ti,pcmd3140
115              - ti,pcmd3180
116              - ti,pcm1690
117              - ti,taa5412
118              - ti,tad5412
119          - const: ti,pcm6240
120      - enum:
121          - ti,adc6120
122          - ti,pcm6240
123
124  reg:
125    description:
126      I2C address, in multiple pcmdevices case, all the i2c address
127      aggregate as one Audio Device to support multiple audio slots.
128    minItems: 1
129    maxItems: 4
130
131  reset-gpios:
132    maxItems: 1
133
134  interrupts:
135    maxItems: 1
136    description:
137      Invalid only for ti,pcm1690 because of no INT pin.
138
139  '#sound-dai-cells':
140    const: 0
141
142required:
143  - compatible
144  - reg
145
146allOf:
147  - $ref: dai-common.yaml#
148  - if:
149      properties:
150        compatible:
151          contains:
152            enum:
153              - ti,pcm1690
154    then:
155      properties:
156        interrupts: false
157
158additionalProperties: false
159
160examples:
161  - |
162   #include <dt-bindings/gpio/gpio.h>
163   i2c {
164     /* example for two devices with interrupt support */
165     #address-cells = <1>;
166     #size-cells = <0>;
167     pcm6240: audio-codec@48 {
168       compatible = "ti,pcm6240";
169       reg = <0x48>, /* primary-device */
170             <0x4b>; /* secondary-device */
171       #sound-dai-cells = <0>;
172       reset-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
173       interrupt-parent = <&gpio1>;
174       interrupts = <15>;
175     };
176   };
177...
178