Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ASoC: qcom: fixes for Click/Pop Noise

Merge series from Srinivas Kandagatla <srinivas.kandagatla@linaro.org>:

Click/Pop Noise was a long pending issue with WSA Codecs which are prone
to accumlate DC when ports are active but without any data streams.
There are multiple places in the current setup, where this could happen
in both startup as well as shutdown path.

+5 -5
+3
sound/soc/qcom/qdsp6/q6apm-lpass-dais.c
··· 130 130 if (dai_data->is_port_started[dai->id]) { 131 131 q6apm_graph_stop(dai_data->graph[dai->id]); 132 132 dai_data->is_port_started[dai->id] = false; 133 + 134 + if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) 135 + q6apm_graph_close(dai_data->graph[dai->id]); 133 136 } 134 137 135 138 /**
+2 -5
sound/soc/qcom/sdw.c
··· 32 32 return 0; 33 33 } 34 34 35 - if (*stream_prepared) { 36 - sdw_disable_stream(sruntime); 37 - sdw_deprepare_stream(sruntime); 38 - *stream_prepared = false; 39 - } 35 + if (*stream_prepared) 36 + return 0; 40 37 41 38 ret = sdw_prepare_stream(sruntime); 42 39 if (ret)