#include <sound/soc.h>
 #include <sound/soc-acpi.h>
 #include <sound/soc-dapm.h>
+#include "sof_board_helpers.h"
 #include "sof_sdw_common.h"
 
 static const struct snd_soc_dapm_widget rt712_spk_widgets[] = {
        return 0;
 }
 
+static const char * const dmics[] = {
+       "rt712-sdca-dmic"
+};
+
 static int rt712_sdca_dmic_rtd_init(struct snd_soc_pcm_runtime *rtd)
 {
        struct snd_soc_card *card = rtd->card;
-       struct snd_soc_dai *codec_dai = snd_soc_rtd_to_codec(rtd, 0);
-       struct snd_soc_component *component = codec_dai->component;
+       struct snd_soc_dai *codec_dai;
+       struct snd_soc_component *component;
+
+       codec_dai = get_codec_dai_by_name(rtd, dmics, ARRAY_SIZE(dmics));
+       if (!codec_dai)
+               return -EINVAL;
 
+       component = codec_dai->component;
        card->components = devm_kasprintf(card->dev, GFP_KERNEL,
                                          "%s mic:%s",
                                          card->components, component->name_prefix);
 
        return 0;
 }
+MODULE_IMPORT_NS(SND_SOC_INTEL_SOF_BOARD_HELPERS);