struct snd_soc_dai *cpu_dai,
                                                      struct snd_pcm_substream *substream)
 {
-       struct snd_soc_pcm_runtime *rtd = snd_soc_substream_to_rtd(substream);
-       struct snd_soc_dai *dai;
        struct hdac_ext_stream *hext_stream;
 
-       /* only allocate a stream_tag for the first DAI in the dailink */
-       dai = snd_soc_rtd_to_cpu(rtd, 0);
-       if (dai == cpu_dai)
-               hext_stream = hda_link_stream_assign(sof_to_bus(sdev), substream);
-       else
-               hext_stream = snd_soc_dai_get_dma_data(dai, substream);
-
+       hext_stream = hda_link_stream_assign(sof_to_bus(sdev), substream);
        if (!hext_stream)
                return NULL;
 
                                    struct snd_pcm_substream *substream)
 {
        struct hdac_ext_stream *hext_stream = hda_get_hext_stream(sdev, cpu_dai, substream);
-       struct snd_soc_pcm_runtime *rtd = snd_soc_substream_to_rtd(substream);
-       struct snd_soc_dai *dai;
 
-       /* only release a stream_tag for the first DAI in the dailink */
-       dai = snd_soc_rtd_to_cpu(rtd, 0);
-       if (dai == cpu_dai)
-               snd_hdac_ext_stream_release(hext_stream, HDAC_EXT_STREAM_TYPE_LINK);
        snd_soc_dai_set_dma_data(cpu_dai, substream, NULL);
+       snd_hdac_ext_stream_release(hext_stream, HDAC_EXT_STREAM_TYPE_LINK);
 }
 
 static void hda_setup_hext_stream(struct snd_sof_dev *sdev, struct hdac_ext_stream *hext_stream,