Commit | Line | Data |
---|---|---|
2439ea1f SB |
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. | |
09af62ff | 28 | This property has to be specified as '/bits/ 8' value. |
2439ea1f SB |
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 | |
24488c39 | 36 | If parameter is missing, channel 1 is chosen. |
09af62ff | 37 | This properties have to be specified as '/bits/ 8' values. |
2439ea1f SB |
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: | |
09af62ff | 87 | If present, automatic invalid input detect mute is enabled. |
2439ea1f | 88 | |
7c2fcccc DM |
89 | - st,activate-mute-output: |
90 | If present, a mute output will be activated in ase the volume will | |
91 | reach a value lower than -76 dBFS. | |
92 | ||
93 | - st,bridge-immediate-off: | |
94 | If present, the bridge will be switched off immediately after the | |
95 | power-down-gpio goes low. Otherwise, the bridge will wait for 13 | |
96 | million clock cycles to pass before shutting down. | |
97 | ||
98 | - st,noise-shape-dc-cut: | |
99 | If present, the noise-shaping technique on the DC cutoff filter are | |
100 | enabled. | |
101 | ||
102 | - st,powerdown-master-volume: | |
103 | If present, the power-down pin and I2C power-down functions will | |
104 | act on the master volume. Otherwise, the functions will act on the | |
105 | mute commands. | |
106 | ||
107 | - st,powerdown-delay-divider: | |
108 | If present, the bridge power-down time will be divided by the provided | |
109 | value. If not specified, a divider of 1 will be used. Allowed values | |
110 | are 1, 2, 4, 8, 16, 32, 64 and 128. | |
111 | This property has to be specified as '/bits/ 8' value. | |
2439ea1f SB |
112 | |
113 | Example: | |
114 | ||
115 | codec: sta350@38 { | |
116 | compatible = "st,sta350"; | |
117 | reg = <0x1c>; | |
118 | reset-gpios = <&gpio1 19 0>; | |
119 | power-down-gpios = <&gpio1 16 0>; | |
09af62ff | 120 | st,output-conf = /bits/ 8 <0x3>; // set output to 2-channel |
2439ea1f SB |
121 | // (full-bridge) power, |
122 | // 2-channel data-out | |
09af62ff DM |
123 | st,ch1-output-mapping = /bits/ 8 <0>; // set channel 1 output ch 1 |
124 | st,ch2-output-mapping = /bits/ 8 <0>; // set channel 2 output ch 1 | |
125 | st,ch3-output-mapping = /bits/ 8 <0>; // set channel 3 output ch 1 | |
2439ea1f SB |
126 | st,max-power-correction; // enables power bridge |
127 | // correction for THD reduction | |
128 | // near maximum power output | |
129 | st,invalid-input-detect-mute; // mute if no valid digital | |
130 | // audio signal is provided. | |
131 | }; |