]> www.infradead.org Git - users/jedix/linux-maple.git/commit
ASoC: q6apm-dai: schedule all available frames to avoid dsp under-runs
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
Fri, 14 Mar 2025 17:47:56 +0000 (17:47 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 31 Mar 2025 13:59:34 +0000 (14:59 +0100)
commit3d4a4411aa8bbc3653ff22a1ff0432eb93d22ae0
treeebce38bb49ed1b250ad59cf0956f7d3a214e38a2
parent7eccc86e90f04a0d758d16c08627a620ac59604d
ASoC: q6apm-dai: schedule all available frames to avoid dsp under-runs

With the existing code, we are only setting up one period at a time, in a
ping-pong buffer style. This triggers lot of underruns in the dsp
leading to jitter noise during audio playback.

Fix this by scheduling all available periods, this will ensure that the dsp
has enough buffer feed and ultimatley fixing the underruns and audio
distortion.

Fixes: 9b4fe0f1cd79 ("ASoC: qdsp6: audioreach: add q6apm-dai support")
Cc: stable@vger.kernel.org
Reported-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Tested-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Tested-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://patch.msgid.link/20250314174800.10142-2-srinivas.kandagatla@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/qcom/qdsp6/q6apm-dai.c