xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/sound/rockchip,rk817-codec.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun* Rockchip rk817 codec
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunRequired properties:
4*4882a593Smuzhiyun
5*4882a593Smuzhiyun- compatible: "rockchip,rk817-codec"
6*4882a593Smuzhiyun- clocks: a list of phandle + clock-specifer pairs, one for each entry in clock-names.
7*4882a593Smuzhiyun- clock-names: should be "mclk".
8*4882a593Smuzhiyun- spk-ctl-gpios: spk mute enable/disable
9*4882a593Smuzhiyun- hp-ctl-gpios: hp mute enable/disable
10*4882a593Smuzhiyun- spk-mute-delay-ms: spk mute delay time
11*4882a593Smuzhiyun- hp-mute-delay-ms: hp mute delay time
12*4882a593Smuzhiyun- spk-volume: DAC L/R volume digital setting for Speaker
13*4882a593Smuzhiyun- hp-volume: DAC L/R volume digital setting for Headphone
14*4882a593Smuzhiyun  *
15*4882a593Smuzhiyun  * DDAC L/R volume setting
16*4882a593Smuzhiyun  * 0db~-95db,0.375db/step,for example:
17*4882a593Smuzhiyun  * 0: 0dB
18*4882a593Smuzhiyun  * 10: -3.75dB
19*4882a593Smuzhiyun  * 125: -46dB
20*4882a593Smuzhiyun  * 255: -95dB
21*4882a593Smuzhiyun  *
22*4882a593Smuzhiyun- capture-volume: ADC L/R volume digital setting for Microphone
23*4882a593Smuzhiyun  *
24*4882a593Smuzhiyun  * DADC L/R volume setting
25*4882a593Smuzhiyun  * 0db~-95db,0.375db/step,for example:
26*4882a593Smuzhiyun  * 0: 0dB
27*4882a593Smuzhiyun  * 10: -3.75dB
28*4882a593Smuzhiyun  * 125: -46dB
29*4882a593Smuzhiyun  * 255: -95dB
30*4882a593Smuzhiyun  *
31*4882a593Smuzhiyun- mic-in-differential:
32*4882a593Smuzhiyun  Boolean. Indicate MIC input are differential, rather than single-ended.
33*4882a593Smuzhiyun- pdmdata-out-enable:
34*4882a593Smuzhiyun  Boolean. Indicate pdmdata output is enable or disable.
35*4882a593Smuzhiyun- use-ext-amplifier:
36*4882a593Smuzhiyun  Boolean. Indicate use external amplifier or not.
37*4882a593Smuzhiyun- adc-for-loopback:
38*4882a593Smuzhiyun  Boolean. Indicate adc use for loopback or not.
39*4882a593Smuzhiyun- out-l2spk-r2hp:
40*4882a593Smuzhiyun  Boolean. Use route config for L to ClassD speaker out and R to HPR out
41*4882a593Smuzhiyun
42*4882a593SmuzhiyunExample for rk817 codec:
43*4882a593Smuzhiyun
44*4882a593Smuzhiyunrk817: pmic@20 {
45*4882a593Smuzhiyun	compatible = "rockchip,rk817";
46*4882a593Smuzhiyun	reg = <0x20>;
47*4882a593Smuzhiyun	interrupt-parent = <&gpio0>;
48*4882a593Smuzhiyun	interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
49*4882a593Smuzhiyun	pinctrl-names = "default";
50*4882a593Smuzhiyun	pinctrl-0 = <&pmic_int>;
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun	........
53*4882a593Smuzhiyun
54*4882a593Smuzhiyun	rk817_codec: codec {
55*4882a593Smuzhiyun			#sound-dai-cells = <0>;
56*4882a593Smuzhiyun			compatible = "rockchip,rk817-codec";
57*4882a593Smuzhiyun			clocks = <&cru SCLK_I2S_8CH_OUT>;
58*4882a593Smuzhiyun			clock-names = "mclk";
59*4882a593Smuzhiyun			pinctrl-names = "default";
60*4882a593Smuzhiyun			pinctrl-0 = <&i2s_8ch_mclk>;
61*4882a593Smuzhiyun			hp-volume = <3>;
62*4882a593Smuzhiyun			spk-volume = <3>;
63*4882a593Smuzhiyun			capture-volume = <0>;
64*4882a593Smuzhiyun			mic-in-differential;
65*4882a593Smuzhiyun			status = "okay";
66*4882a593Smuzhiyun	};
67*4882a593Smuzhiyun
68*4882a593Smuzhiyun	........
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun};
71