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