On Wed, Oct 14, 2026 at 07:36:49PM +0300, Vladyslav Tymoshchuk wrote:
> The amplifier is started from the PRE_PMU event of its AIF widget, that
> is from DAPM in prepare. aw88261_dev_start() then waits up to 20 ms for
> the PLL to lock to the bit clock and powers the amplifier down again if
> it does not.
>
> Not every host runs the bit clock by then. The Qualcomm AudioReach
> backends only start their graph, and with it the I2S/TDM clocks, in
> trigger since commit b54a38af7138 ("ASoC: qcom: q6apm-lpass-dai: move
> graph start to trigger"). There every start fails with "start failure
> (-1)" and the speaker stays silent for the whole stream, as seen with
> six AW88261 on a TDM link of SM8750. The asynchronous start removed by
> commit caea99ac809d ("ASoC: codecs: aw88261: remove async start") only
> hid this when the trigger came soon enough.OTOH some hosts presumably do have the clock running earlier and will now get delays added in trigger which isn't ideal. I'm not sure we have good solutions here given that this is all system dependent. > The trigger has to be nonatomic for the I2C accesses, which the > Qualcomm DPCM links using this codec are. Are we *sure* there are no other users out there?
signature.asc
Description: PGP signature

