ecd7a623c8bd3de1a89a0f19e382d8e3aeb56b70
[firefly-linux-kernel-4.4.55.git] / Documentation / devicetree / bindings / sound / st,sta350.txt
1 STA350 audio CODEC
2
3 The driver for this device only supports I2C.
4
5 Required properties:
6
7   - compatible: "st,sta350"
8   - reg: the I2C address of the device for I2C
9   - reset-gpios: a GPIO spec for the reset pin. If specified, it will be
10                  deasserted before communication to the codec starts.
11
12   - power-down-gpios: a GPIO spec for the power down pin. If specified,
13                       it will be deasserted before communication to the codec
14                       starts.
15
16   - vdd-dig-supply: regulator spec, providing 3.3V
17   - vdd-pll-supply: regulator spec, providing 3.3V
18   - vcc-supply: regulator spec, providing 5V - 26V
19
20 Optional properties:
21
22   -  st,output-conf: number, Selects the output configuration:
23         0: 2-channel (full-bridge) power, 2-channel data-out
24         1: 2 (half-bridge). 1 (full-bridge) on-board power
25         2: 2 Channel (Full-Bridge) Power, 1 Channel FFX
26         3: 1 Channel Mono-Parallel
27         If parameter is missing, mode 0 will be enabled.
28         This property has to be specified as '/bits/ 8' value.
29
30   -  st,ch1-output-mapping: Channel 1 output mapping
31   -  st,ch2-output-mapping: Channel 2 output mapping
32   -  st,ch3-output-mapping: Channel 3 output mapping
33         0: Channel 1
34         1: Channel 2
35         2: Channel 3
36         If parameter is missing, channel 1 is choosen.
37         This properties have to be specified as '/bits/ 8' values.
38
39   -  st,thermal-warning-recover:
40         If present, thermal warning recovery is enabled.
41
42   -  st,thermal-warning-adjustment:
43         If present, thermal warning adjustment is enabled.
44
45   -  st,fault-detect-recovery:
46         If present, then fault recovery will be enabled.
47
48   -  st,ffx-power-output-mode: string
49         The FFX power output mode selects how the FFX output timing is
50         configured. Must be one of these values:
51           -  "drop-compensation"
52           -  "tapered-compensation"
53           -  "full-power-mode"
54           -  "variable-drop-compensation" (default)
55
56   -  st,drop-compensation-ns: number
57         Only required for "st,ffx-power-output-mode" ==
58         "variable-drop-compensation".
59         Specifies the drop compensation in nanoseconds.
60         The value must be in the range of 0..300, and only
61         multiples of 20 are allowed. Default is 140ns.
62
63   -  st,overcurrent-warning-adjustment:
64         If present, overcurrent warning adjustment is enabled.
65
66   -  st,max-power-use-mpcc:
67         If present, then MPCC bits are used for MPC coefficients,
68         otherwise standard MPC coefficients are used.
69
70   -  st,max-power-corr:
71         If present, power bridge correction for THD reduction near maximum
72         power output is enabled.
73
74   -  st,am-reduction-mode:
75         If present, FFX mode runs in AM reduction mode, otherwise normal
76         FFX mode is used.
77
78   -  st,odd-pwm-speed-mode:
79         If present, PWM speed mode run on odd speed mode (341.3 kHz) on all
80         channels. If not present, normal PWM spped mode (384 kHz) will be used.
81
82   -  st,distortion-compensation:
83         If present, distortion compensation variable uses DCC coefficient.
84         If not present, preset DC coefficient is used.
85
86   -  st,invalid-input-detect-mute:
87         If present, automatic invalid input detect mute is enabled.
88
89
90
91 Example:
92
93 codec: sta350@38 {
94         compatible = "st,sta350";
95         reg = <0x1c>;
96         reset-gpios = <&gpio1 19 0>;
97         power-down-gpios = <&gpio1 16 0>;
98         st,output-conf = /bits/ 8  <0x3>;       // set output to 2-channel
99                                                 // (full-bridge) power,
100                                                 // 2-channel data-out
101         st,ch1-output-mapping = /bits/ 8 <0>;   // set channel 1 output ch 1
102         st,ch2-output-mapping = /bits/ 8 <0>;   // set channel 2 output ch 1
103         st,ch3-output-mapping = /bits/ 8 <0>;   // set channel 3 output ch 1
104         st,max-power-correction;                // enables power bridge
105                                                 // correction for THD reduction
106                                                 // near maximum power output
107         st,invalid-input-detect-mute;           // mute if no valid digital
108                                                 // audio signal is provided.
109 };