/* need to sync the delayed work before releasing resources */
flush_delayed_work(&rtd->delayed_work);
- snd_soc_pcm_component_free(pcm);
+ snd_soc_pcm_component_free(rtd);
}
/* create a new pcm */
if (capture)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &rtd->ops);
- ret = snd_soc_pcm_component_new(pcm);
+ ret = snd_soc_pcm_component_new(rtd);
if (ret < 0) {
dev_err(rtd->dev, "ASoC: pcm constructor failed: %d\n", ret);
return ret;