xref: /freebsd/sys/contrib/device-tree/Bindings/sound/rt5640.txt (revision 5e3190f700637fcfc1a52daeaa4a031fdd2557c7)
1RT5640/RT5639 audio CODEC
2
3This device supports I2C only.
4
5Required properties:
6
7- compatible : One of "realtek,rt5640" or "realtek,rt5639".
8
9- reg : The I2C address of the device.
10
11- interrupts : The CODEC's interrupt output.
12
13Optional properties:
14
15- clocks: The phandle of the master clock to the CODEC
16- clock-names: Should be "mclk"
17
18- realtek,in1-differential
19- realtek,in2-differential
20- realtek,in3-differential
21  Boolean. Indicate MIC1/2/3 input are differential, rather than single-ended.
22
23- realtek,lout-differential
24  Boolean. Indicate LOUT output is differential, rather than stereo.
25
26- realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin.
27
28- realtek,dmic1-data-pin
29  0: dmic1 is not used
30  1: using IN1P pin as dmic1 data pin
31  2: using GPIO3 pin as dmic1 data pin
32
33- realtek,dmic2-data-pin
34  0: dmic2 is not used
35  1: using IN1N pin as dmic2 data pin
36  2: using GPIO4 pin as dmic2 data pin
37
38- realtek,jack-detect-source
39  u32. Valid values:
40  0: jack-detect is not used
41  1: Use GPIO1 for jack-detect
42  2: Use JD1_IN4P for jack-detect
43  3: Use JD2_IN4N for jack-detect
44  4: Use GPIO2 for jack-detect
45  5: Use GPIO3 for jack-detect
46  6: Use GPIO4 for jack-detect
47
48- realtek,jack-detect-not-inverted
49  bool. Normal jack-detect switches give an inverted signal, set this bool
50  in the rare case you've a jack-detect switch which is not inverted.
51
52- realtek,over-current-threshold-microamp
53  u32, micbias over-current detection threshold in µA, valid values are
54  600, 1500 and 2000µA.
55
56- realtek,over-current-scale-factor
57  u32, micbias over-current detection scale-factor, valid values are:
58  0: Scale current by 0.5
59  1: Scale current by 0.75
60  2: Scale current by 1.0
61  3: Scale current by 1.5
62
63Pins on the device (for linking into audio routes) for RT5639/RT5640:
64
65  * DMIC1
66  * DMIC2
67  * MICBIAS1
68  * IN1P
69  * IN1N
70  * IN2P
71  * IN2N
72  * IN3P
73  * IN3N
74  * HPOL
75  * HPOR
76  * LOUTL
77  * LOUTR
78  * SPOLP
79  * SPOLN
80  * SPORP
81  * SPORN
82
83Additional pins on the device for RT5640:
84
85  * MONOP
86  * MONON
87
88Example:
89
90rt5640 {
91	compatible = "realtek,rt5640";
92	reg = <0x1c>;
93	interrupt-parent = <&gpio>;
94	interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_LEVEL_HIGH>;
95	realtek,ldo1-en-gpios =
96		<&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_HIGH>;
97};
98