1908b7032SOder ChiouRT5640/RT5639 audio CODEC
2dcad9f03SStephen Warren
3dcad9f03SStephen WarrenThis device supports I2C only.
4dcad9f03SStephen Warren
5dcad9f03SStephen WarrenRequired properties:
6dcad9f03SStephen Warren
7908b7032SOder Chiou- compatible : One of "realtek,rt5640" or "realtek,rt5639".
8dcad9f03SStephen Warren
9dcad9f03SStephen Warren- reg : The I2C address of the device.
10dcad9f03SStephen Warren
11dcad9f03SStephen Warren- interrupts : The CODEC's interrupt output.
12dcad9f03SStephen Warren
13dcad9f03SStephen WarrenOptional properties:
14dcad9f03SStephen Warren
156049af00SSugar Zhang- clocks: The phandle of the master clock to the CODEC
166049af00SSugar Zhang- clock-names: Should be "mclk"
176049af00SSugar Zhang
18dcad9f03SStephen Warren- realtek,in1-differential
19dcad9f03SStephen Warren- realtek,in2-differential
2016566e47SOder Chiou- realtek,in3-differential
2116566e47SOder Chiou  Boolean. Indicate MIC1/2/3 input are differential, rather than single-ended.
22dcad9f03SStephen Warren
23*d8510532SOndrej Jirman- realtek,lout-differential
24*d8510532SOndrej Jirman  Boolean. Indicate LOUT output is differential, rather than stereo.
25*d8510532SOndrej Jirman
26dcad9f03SStephen Warren- realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin.
27dcad9f03SStephen Warren
28e9e7a3bdSHans de Goede- realtek,dmic1-data-pin
29e9e7a3bdSHans de Goede  0: dmic1 is not used
30e9e7a3bdSHans de Goede  1: using IN1P pin as dmic1 data pin
31e9e7a3bdSHans de Goede  2: using GPIO3 pin as dmic1 data pin
32e9e7a3bdSHans de Goede
33e9e7a3bdSHans de Goede- realtek,dmic2-data-pin
34e9e7a3bdSHans de Goede  0: dmic2 is not used
35e9e7a3bdSHans de Goede  1: using IN1N pin as dmic2 data pin
36e9e7a3bdSHans de Goede  2: using GPIO4 pin as dmic2 data pin
37e9e7a3bdSHans de Goede
38e9e7a3bdSHans de Goede- realtek,jack-detect-source
39e9e7a3bdSHans de Goede  u32. Valid values:
40e9e7a3bdSHans de Goede  0: jack-detect is not used
41e9e7a3bdSHans de Goede  1: Use GPIO1 for jack-detect
42e9e7a3bdSHans de Goede  2: Use JD1_IN4P for jack-detect
43e9e7a3bdSHans de Goede  3: Use JD2_IN4N for jack-detect
44e9e7a3bdSHans de Goede  4: Use GPIO2 for jack-detect
45e9e7a3bdSHans de Goede  5: Use GPIO3 for jack-detect
46e9e7a3bdSHans de Goede  6: Use GPIO4 for jack-detect
47e9e7a3bdSHans de Goede
48e9e7a3bdSHans de Goede- realtek,jack-detect-not-inverted
49e9e7a3bdSHans de Goede  bool. Normal jack-detect switches give an inverted signal, set this bool
50e9e7a3bdSHans de Goede  in the rare case you've a jack-detect switch which is not inverted.
51e9e7a3bdSHans de Goede
52e9e7a3bdSHans de Goede- realtek,over-current-threshold-microamp
53e9e7a3bdSHans de Goede  u32, micbias over-current detection threshold in µA, valid values are
54e9e7a3bdSHans de Goede  600, 1500 and 2000µA.
55e9e7a3bdSHans de Goede
56e9e7a3bdSHans de Goede- realtek,over-current-scale-factor
57e9e7a3bdSHans de Goede  u32, micbias over-current detection scale-factor, valid values are:
58e9e7a3bdSHans de Goede  0: Scale current by 0.5
59e9e7a3bdSHans de Goede  1: Scale current by 0.75
60e9e7a3bdSHans de Goede  2: Scale current by 1.0
61e9e7a3bdSHans de Goede  3: Scale current by 1.5
62e9e7a3bdSHans de Goede
63908b7032SOder ChiouPins on the device (for linking into audio routes) for RT5639/RT5640:
64b33d1f08SMark Brown
65b33d1f08SMark Brown  * DMIC1
66b33d1f08SMark Brown  * DMIC2
67b33d1f08SMark Brown  * MICBIAS1
68b33d1f08SMark Brown  * IN1P
69841fdde1SOder Chiou  * IN1N
70b33d1f08SMark Brown  * IN2P
71841fdde1SOder Chiou  * IN2N
7216566e47SOder Chiou  * IN3P
7316566e47SOder Chiou  * IN3N
74b33d1f08SMark Brown  * HPOL
75b33d1f08SMark Brown  * HPOR
76b33d1f08SMark Brown  * LOUTL
77b33d1f08SMark Brown  * LOUTR
78b33d1f08SMark Brown  * SPOLP
79b33d1f08SMark Brown  * SPOLN
80b33d1f08SMark Brown  * SPORP
81b33d1f08SMark Brown  * SPORN
82b33d1f08SMark Brown
83908b7032SOder ChiouAdditional pins on the device for RT5640:
84908b7032SOder Chiou
85908b7032SOder Chiou  * MONOP
86908b7032SOder Chiou  * MONON
87908b7032SOder Chiou
88dcad9f03SStephen WarrenExample:
89dcad9f03SStephen Warren
90dcad9f03SStephen Warrenrt5640 {
91dcad9f03SStephen Warren	compatible = "realtek,rt5640";
92dcad9f03SStephen Warren	reg = <0x1c>;
93dcad9f03SStephen Warren	interrupt-parent = <&gpio>;
94abe42b09SKrzysztof Kozlowski	interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_LEVEL_HIGH>;
95dcad9f03SStephen Warren	realtek,ldo1-en-gpios =
96dcad9f03SStephen Warren		<&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_HIGH>;
97dcad9f03SStephen Warren};
98