Linux Sound subsystem development
 help / color / mirror / Atom feed
* [PATCH v3 0/6] ASoC: q6apm: fix under runs and fragment sizes
@ 2025-03-04 10:57 srinivas.kandagatla
  2025-03-04 10:57 ` [PATCH v3 1/6] ASoC: q6apm-dai: schedule all available frames to avoid dsp under-runs srinivas.kandagatla
                   ` (8 more replies)
  0 siblings, 9 replies; 16+ messages in thread
From: srinivas.kandagatla @ 2025-03-04 10:57 UTC (permalink / raw)
  To: broonie
  Cc: perex, tiwai, krzysztof.kozlowski, linux-sound, linux-arm-msm,
	linux-kernel, dmitry.baryshkov, johan+linaro, Srinivas Kandagatla

From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

On Qualcomm Audioreach setup, some of the audio artifacts are seen in
both recording and playback. These patches fix issues by
1. Adjusting the fragment size that dsp can service.
2. schedule available playback buffers in time for dsp to not hit under runs 
3. remove some of the manual calculations done to get hardware pointer.

With these patches, am able to see Audio quality improvements.

Any testing would be appreciated.

thanks,
Srini

Changes since v2:
	- dropped patch which is causing regression with pluseaudio.
	- setup period sizes only for capture path
	- fix underruns/overruns in dsp pipelines.
	- add fixes tag
	- add patch to fix buffer alignment

Changes since v1:
	- added new patches to fix the fragment size, pointer
	  calculations
	- updated to schedule only available buffers.

Srinivas Kandagatla (6):
  ASoC: q6apm-dai: schedule all available frames to avoid dsp under-runs
  ASoC: q6apm: add q6apm_get_hw_pointer helper
  ASoC: q6apm-dai: make use of q6apm_get_hw_pointer
  ASoC: qdsp6: q6apm-dai: set correct period and buffer alignment.
  ASoC: qdsp6: q6apm-dai: fix capture pipeline overruns.
  ASoC: qdsp6: q6apm-dai: fix playback dsp pipeline underruns

 sound/soc/qcom/qdsp6/q6apm-dai.c | 63 +++++++++++++++++---------------
 sound/soc/qcom/qdsp6/q6apm.c     | 18 ++++++++-
 sound/soc/qcom/qdsp6/q6apm.h     |  3 ++
 3 files changed, 53 insertions(+), 31 deletions(-)

-- 
2.39.5


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2025-03-06 17:04 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-04 10:57 [PATCH v3 0/6] ASoC: q6apm: fix under runs and fragment sizes srinivas.kandagatla
2025-03-04 10:57 ` [PATCH v3 1/6] ASoC: q6apm-dai: schedule all available frames to avoid dsp under-runs srinivas.kandagatla
2025-03-04 10:57 ` [PATCH v3 2/6] ASoC: q6apm: add q6apm_get_hw_pointer helper srinivas.kandagatla
2025-03-04 10:57 ` [PATCH v3 3/6] ASoC: q6apm-dai: make use of q6apm_get_hw_pointer srinivas.kandagatla
2025-03-04 10:57 ` [PATCH v3 4/6] ASoC: qdsp6: q6apm-dai: set correct period and buffer alignment srinivas.kandagatla
2025-03-04 10:57 ` [PATCH v3 5/6] ASoC: qdsp6: q6apm-dai: fix capture pipeline overruns srinivas.kandagatla
2025-03-04 10:57 ` [PATCH v3 6/6] ASoC: qdsp6: q6apm-dai: fix playback dsp pipeline underruns srinivas.kandagatla
2025-03-04 17:04 ` [PATCH v3 0/6] ASoC: q6apm: fix under runs and fragment sizes Johan Hovold
2025-03-04 17:12   ` Srinivas Kandagatla
2025-03-04 17:19     ` Johan Hovold
2025-03-05  9:06       ` Johan Hovold
2025-03-05  9:21         ` Johan Hovold
2025-03-05 22:17 ` Caleb Connolly
2025-03-06 13:15   ` Srinivas Kandagatla
2025-03-06 17:04     ` Dmitry Baryshkov
2025-03-06 13:56 ` Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox