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 chosen. 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 speed 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. };