struct snd_sof_widget *swidget;
        struct snd_soc_dapm_widget *w;
        struct snd_soc_dai *codec_dai;
-       struct snd_soc_dai *cpu_dai;
        int ret;
 
        dev_dbg(dai->dev, "cmd=%d dai %s direction %d\n", cmd,
                dai->name, substream->stream);
 
        rtd = asoc_substream_to_rtd(substream);
-       cpu_dai = asoc_rtd_to_cpu(rtd, 0);
        codec_dai = asoc_rtd_to_codec(rtd, 0);
 
        w = snd_soc_dai_get_widget(dai, substream->stream);
 
                pipeline->state = SOF_IPC4_PIPE_RESET;
 
-               ret = hda_link_dma_cleanup(substream, hext_stream, cpu_dai, codec_dai);
+               ret = hda_link_dma_cleanup(substream, hext_stream, dai, codec_dai);
                if (ret < 0) {
                        dev_err(sdev->dev, "%s: failed to clean up link DMA\n", __func__);
                        return ret;