xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/sound/tlv320aic3x.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunTexas Instruments - tlv320aic3x Codec module
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunThe tlv320aic3x serial control bus communicates through I2C protocols
4*4882a593Smuzhiyun
5*4882a593SmuzhiyunRequired properties:
6*4882a593Smuzhiyun
7*4882a593Smuzhiyun- compatible - "string" - One of:
8*4882a593Smuzhiyun    "ti,tlv320aic3x" - Generic TLV320AIC3x device
9*4882a593Smuzhiyun    "ti,tlv320aic33" - TLV320AIC33
10*4882a593Smuzhiyun    "ti,tlv320aic3007" - TLV320AIC3007
11*4882a593Smuzhiyun    "ti,tlv320aic3106" - TLV320AIC3106
12*4882a593Smuzhiyun    "ti,tlv320aic3104" - TLV320AIC3104
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun- reg - <int> -  I2C slave address
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun
18*4882a593SmuzhiyunOptional properties:
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun- reset-gpios - GPIO specification for the active low RESET input.
21*4882a593Smuzhiyun- ai3x-gpio-func - <array of 2 int> - AIC3X_GPIO1 & AIC3X_GPIO2 Functionality
22*4882a593Smuzhiyun				    - Not supported on tlv320aic3104
23*4882a593Smuzhiyun- ai3x-micbias-vg - MicBias Voltage required.
24*4882a593Smuzhiyun	1 - MICBIAS output is powered to 2.0V,
25*4882a593Smuzhiyun	2 - MICBIAS output is powered to 2.5V,
26*4882a593Smuzhiyun	3 - MICBIAS output is connected to AVDD,
27*4882a593Smuzhiyun	If this node is not mentioned or if the value is incorrect, then MicBias
28*4882a593Smuzhiyun	is powered down.
29*4882a593Smuzhiyun- ai3x-ocmv - Output Common-Mode Voltage selection:
30*4882a593Smuzhiyun	0 - 1.35V,
31*4882a593Smuzhiyun	1 - 1.5V,
32*4882a593Smuzhiyun	2 - 1.65V,
33*4882a593Smuzhiyun	3 - 1.8V
34*4882a593Smuzhiyun- AVDD-supply, IOVDD-supply, DRVDD-supply, DVDD-supply : power supplies for the
35*4882a593Smuzhiyun  device as covered in Documentation/devicetree/bindings/regulator/regulator.txt
36*4882a593Smuzhiyun
37*4882a593SmuzhiyunDeprecated properties:
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun- gpio-reset - gpio pin number used for codec reset
40*4882a593Smuzhiyun
41*4882a593SmuzhiyunCODEC output pins:
42*4882a593Smuzhiyun  * LLOUT
43*4882a593Smuzhiyun  * RLOUT
44*4882a593Smuzhiyun  * MONO_LOUT
45*4882a593Smuzhiyun  * HPLOUT
46*4882a593Smuzhiyun  * HPROUT
47*4882a593Smuzhiyun  * HPLCOM
48*4882a593Smuzhiyun  * HPRCOM
49*4882a593Smuzhiyun
50*4882a593SmuzhiyunCODEC input pins for TLV320AIC3104:
51*4882a593Smuzhiyun  * MIC2L
52*4882a593Smuzhiyun  * MIC2R
53*4882a593Smuzhiyun  * LINE1L
54*4882a593Smuzhiyun  * LINE1R
55*4882a593Smuzhiyun
56*4882a593SmuzhiyunCODEC input pins for other compatible codecs:
57*4882a593Smuzhiyun  * MIC3L
58*4882a593Smuzhiyun  * MIC3R
59*4882a593Smuzhiyun  * LINE1L
60*4882a593Smuzhiyun  * LINE2L
61*4882a593Smuzhiyun  * LINE1R
62*4882a593Smuzhiyun  * LINE2R
63*4882a593Smuzhiyun
64*4882a593SmuzhiyunThe pins can be used in referring sound node's audio-routing property.
65*4882a593Smuzhiyun
66*4882a593SmuzhiyunExample:
67*4882a593Smuzhiyun
68*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h>
69*4882a593Smuzhiyun
70*4882a593Smuzhiyuntlv320aic3x: tlv320aic3x@1b {
71*4882a593Smuzhiyun	compatible = "ti,tlv320aic3x";
72*4882a593Smuzhiyun	reg = <0x1b>;
73*4882a593Smuzhiyun
74*4882a593Smuzhiyun	reset-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
75*4882a593Smuzhiyun
76*4882a593Smuzhiyun	AVDD-supply = <&regulator>;
77*4882a593Smuzhiyun	IOVDD-supply = <&regulator>;
78*4882a593Smuzhiyun	DRVDD-supply = <&regulator>;
79*4882a593Smuzhiyun	DVDD-supply = <&regulator>;
80*4882a593Smuzhiyun};
81