mirror of
https://github.com/torvalds/linux.git
synced 2024-12-21 02:21:36 +00:00
7c2fcccc32
Add support for RPDNEN, NSHHPEN, BRIDGOFF, CPWMEN and PNDLSL, and add DT bindings to access them. Signed-off-by: Daniel Mack <zonque@gmail.com> Signed-off-by: Mark Brown <broonie@linaro.org>
132 lines
4.4 KiB
Plaintext
132 lines
4.4 KiB
Plaintext
STA350 audio CODEC
|
|
|
|
The driver for this device only supports I2C.
|
|
|
|
Required properties:
|
|
|
|
- compatible: "st,sta350"
|
|
- reg: the I2C address of the device for I2C
|
|
- reset-gpios: a GPIO spec for the reset pin. If specified, it will be
|
|
deasserted before communication to the codec starts.
|
|
|
|
- power-down-gpios: a GPIO spec for the power down pin. If specified,
|
|
it will be deasserted before communication to the codec
|
|
starts.
|
|
|
|
- vdd-dig-supply: regulator spec, providing 3.3V
|
|
- vdd-pll-supply: regulator spec, providing 3.3V
|
|
- vcc-supply: regulator spec, providing 5V - 26V
|
|
|
|
Optional properties:
|
|
|
|
- st,output-conf: number, Selects the output configuration:
|
|
0: 2-channel (full-bridge) power, 2-channel data-out
|
|
1: 2 (half-bridge). 1 (full-bridge) on-board power
|
|
2: 2 Channel (Full-Bridge) Power, 1 Channel FFX
|
|
3: 1 Channel Mono-Parallel
|
|
If parameter is missing, mode 0 will be enabled.
|
|
This property has to be specified as '/bits/ 8' value.
|
|
|
|
- st,ch1-output-mapping: Channel 1 output mapping
|
|
- st,ch2-output-mapping: Channel 2 output mapping
|
|
- st,ch3-output-mapping: Channel 3 output mapping
|
|
0: Channel 1
|
|
1: Channel 2
|
|
2: Channel 3
|
|
If parameter is missing, channel 1 is choosen.
|
|
This properties have to be specified as '/bits/ 8' values.
|
|
|
|
- st,thermal-warning-recover:
|
|
If present, thermal warning recovery is enabled.
|
|
|
|
- st,thermal-warning-adjustment:
|
|
If present, thermal warning adjustment is enabled.
|
|
|
|
- st,fault-detect-recovery:
|
|
If present, then fault recovery will be enabled.
|
|
|
|
- st,ffx-power-output-mode: string
|
|
The FFX power output mode selects how the FFX output timing is
|
|
configured. Must be one of these values:
|
|
- "drop-compensation"
|
|
- "tapered-compensation"
|
|
- "full-power-mode"
|
|
- "variable-drop-compensation" (default)
|
|
|
|
- st,drop-compensation-ns: number
|
|
Only required for "st,ffx-power-output-mode" ==
|
|
"variable-drop-compensation".
|
|
Specifies the drop compensation in nanoseconds.
|
|
The value must be in the range of 0..300, and only
|
|
multiples of 20 are allowed. Default is 140ns.
|
|
|
|
- st,overcurrent-warning-adjustment:
|
|
If present, overcurrent warning adjustment is enabled.
|
|
|
|
- st,max-power-use-mpcc:
|
|
If present, then MPCC bits are used for MPC coefficients,
|
|
otherwise standard MPC coefficients are used.
|
|
|
|
- st,max-power-corr:
|
|
If present, power bridge correction for THD reduction near maximum
|
|
power output is enabled.
|
|
|
|
- st,am-reduction-mode:
|
|
If present, FFX mode runs in AM reduction mode, otherwise normal
|
|
FFX mode is used.
|
|
|
|
- st,odd-pwm-speed-mode:
|
|
If present, PWM speed mode run on odd speed mode (341.3 kHz) on all
|
|
channels. If not present, normal PWM spped mode (384 kHz) will be used.
|
|
|
|
- st,distortion-compensation:
|
|
If present, distortion compensation variable uses DCC coefficient.
|
|
If not present, preset DC coefficient is used.
|
|
|
|
- st,invalid-input-detect-mute:
|
|
If present, automatic invalid input detect mute is enabled.
|
|
|
|
- st,activate-mute-output:
|
|
If present, a mute output will be activated in ase the volume will
|
|
reach a value lower than -76 dBFS.
|
|
|
|
- st,bridge-immediate-off:
|
|
If present, the bridge will be switched off immediately after the
|
|
power-down-gpio goes low. Otherwise, the bridge will wait for 13
|
|
million clock cycles to pass before shutting down.
|
|
|
|
- st,noise-shape-dc-cut:
|
|
If present, the noise-shaping technique on the DC cutoff filter are
|
|
enabled.
|
|
|
|
- st,powerdown-master-volume:
|
|
If present, the power-down pin and I2C power-down functions will
|
|
act on the master volume. Otherwise, the functions will act on the
|
|
mute commands.
|
|
|
|
- st,powerdown-delay-divider:
|
|
If present, the bridge power-down time will be divided by the provided
|
|
value. If not specified, a divider of 1 will be used. Allowed values
|
|
are 1, 2, 4, 8, 16, 32, 64 and 128.
|
|
This property has to be specified as '/bits/ 8' value.
|
|
|
|
Example:
|
|
|
|
codec: sta350@38 {
|
|
compatible = "st,sta350";
|
|
reg = <0x1c>;
|
|
reset-gpios = <&gpio1 19 0>;
|
|
power-down-gpios = <&gpio1 16 0>;
|
|
st,output-conf = /bits/ 8 <0x3>; // set output to 2-channel
|
|
// (full-bridge) power,
|
|
// 2-channel data-out
|
|
st,ch1-output-mapping = /bits/ 8 <0>; // set channel 1 output ch 1
|
|
st,ch2-output-mapping = /bits/ 8 <0>; // set channel 2 output ch 1
|
|
st,ch3-output-mapping = /bits/ 8 <0>; // set channel 3 output ch 1
|
|
st,max-power-correction; // enables power bridge
|
|
// correction for THD reduction
|
|
// near maximum power output
|
|
st,invalid-input-detect-mute; // mute if no valid digital
|
|
// audio signal is provided.
|
|
};
|