diff options
Diffstat (limited to 'sound/soc/qcom/qdsp6')
-rw-r--r-- | sound/soc/qcom/qdsp6/q6apm-lpass-dais.c | 3 | ||||
-rw-r--r-- | sound/soc/qcom/qdsp6/q6apm.c | 2 | ||||
-rw-r--r-- | sound/soc/qcom/qdsp6/q6routing.c | 6 |
3 files changed, 6 insertions, 5 deletions
diff --git a/sound/soc/qcom/qdsp6/q6apm-lpass-dais.c b/sound/soc/qcom/qdsp6/q6apm-lpass-dais.c index 23d23bc6fbaa..420e8aa11f42 100644 --- a/sound/soc/qcom/qdsp6/q6apm-lpass-dais.c +++ b/sound/soc/qcom/qdsp6/q6apm-lpass-dais.c @@ -130,6 +130,9 @@ static int q6apm_lpass_dai_prepare(struct snd_pcm_substream *substream, struct s if (dai_data->is_port_started[dai->id]) { q6apm_graph_stop(dai_data->graph[dai->id]); dai_data->is_port_started[dai->id] = false; + + if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) + q6apm_graph_close(dai_data->graph[dai->id]); } /** diff --git a/sound/soc/qcom/qdsp6/q6apm.c b/sound/soc/qcom/qdsp6/q6apm.c index 994c9e823a88..a7a3f973eb6d 100644 --- a/sound/soc/qcom/qdsp6/q6apm.c +++ b/sound/soc/qcom/qdsp6/q6apm.c @@ -676,7 +676,7 @@ static int apm_probe(gpr_device_t *gdev) ret = devm_snd_soc_register_component(dev, &q6apm_audio_component, NULL, 0); if (ret < 0) { - dev_err(dev, "failed to get register q6apm: %d\n", ret); + dev_err(dev, "failed to register q6apm: %d\n", ret); return ret; } diff --git a/sound/soc/qcom/qdsp6/q6routing.c b/sound/soc/qcom/qdsp6/q6routing.c index 928fd23e2c27..bba07899f8fc 100644 --- a/sound/soc/qcom/qdsp6/q6routing.c +++ b/sound/soc/qcom/qdsp6/q6routing.c @@ -1140,12 +1140,10 @@ static int q6pcm_routing_probe(struct platform_device *pdev) NULL, 0); } -static int q6pcm_routing_remove(struct platform_device *pdev) +static void q6pcm_routing_remove(struct platform_device *pdev) { kfree(routing_data); routing_data = NULL; - - return 0; } #ifdef CONFIG_OF @@ -1162,7 +1160,7 @@ static struct platform_driver q6pcm_routing_platform_driver = { .of_match_table = of_match_ptr(q6pcm_routing_device_id), }, .probe = q6pcm_routing_probe, - .remove = q6pcm_routing_remove, + .remove_new = q6pcm_routing_remove, }; module_platform_driver(q6pcm_routing_platform_driver); |