.dailink = {SDW_JACK_OUT_DAI_ID, SDW_JACK_IN_DAI_ID},
                                .init = sof_sdw_rt_sdca_jack_init,
                                .exit = sof_sdw_rt_sdca_jack_exit,
+                               .rtd_init = rt_sdca_jack_rtd_init,
                        },
                        {
                                .direction = {true, false},
                                .dai_type = SOF_SDW_DAI_TYPE_AMP,
                                /* No feedback capability is provided by rt722-sdca codec driver*/
                                .dailink = {SDW_AMP_OUT_DAI_ID, SDW_UNUSED_DAI_ID},
-                               .init = sof_sdw_rt722_spk_init,
+                               .rtd_init = rt722_spk_rtd_init,
                        },
                        {
                                .direction = {false, true},
                                .dai_name = "rt722-sdca-aif3",
                                .dai_type = SOF_SDW_DAI_TYPE_MIC,
                                .dailink = {SDW_UNUSED_DAI_ID, SDW_DMIC_DAI_ID},
-                               .init = sof_sdw_rt722_sdca_dmic_init,
+                               .rtd_init = rt722_sdca_dmic_rtd_init,
                        },
                },
                .dai_num = 3,
 
                        bool playback);
 int sof_sdw_rt_amp_exit(struct snd_soc_card *card, struct snd_soc_dai_link *dai_link);
 
-/* RT722-SDCA support */
-int sof_sdw_rt722_spk_init(struct snd_soc_card *card,
-                          const struct snd_soc_acpi_link_adr *link,
-                          struct snd_soc_dai_link *dai_links,
-                          struct sof_sdw_codec_info *info,
-                          bool playback);
-int sof_sdw_rt722_sdca_dmic_init(struct snd_soc_card *card,
-                                const struct snd_soc_acpi_link_adr *link,
-                                struct snd_soc_dai_link *dai_links,
-                                struct sof_sdw_codec_info *info,
-                                bool playback);
-
 /* MAXIM codec support */
 int sof_sdw_maxim_init(struct snd_soc_card *card,
                       const struct snd_soc_acpi_link_adr *link,
 int rt700_rtd_init(struct snd_soc_pcm_runtime *rtd);
 int rt711_rtd_init(struct snd_soc_pcm_runtime *rtd);
 int rt712_spk_rtd_init(struct snd_soc_pcm_runtime *rtd);
+int rt722_spk_rtd_init(struct snd_soc_pcm_runtime *rtd);
+int rt722_sdca_dmic_rtd_init(struct snd_soc_pcm_runtime *rtd);
 int rt_dmic_rtd_init(struct snd_soc_pcm_runtime *rtd);
 int rt_amp_spk_rtd_init(struct snd_soc_pcm_runtime *rtd);
 int rt_sdca_jack_rtd_init(struct snd_soc_pcm_runtime *rtd);
 
        SOC_DAPM_PIN_SWITCH("Speaker"),
 };
 
-static int rt722_spk_init(struct snd_soc_pcm_runtime *rtd)
+int rt722_spk_rtd_init(struct snd_soc_pcm_runtime *rtd)
 {
        struct snd_soc_card *card = rtd->card;
        int ret;
        return ret;
 }
 
-int sof_sdw_rt722_spk_init(struct snd_soc_card *card,
-                          const struct snd_soc_acpi_link_adr *link,
-                          struct snd_soc_dai_link *dai_links,
-                          struct sof_sdw_codec_info *info,
-                          bool playback)
-{
-       dai_links->init = rt722_spk_init;
-
-       return 0;
-}
-
-static int rt722_sdca_dmic_rtd_init(struct snd_soc_pcm_runtime *rtd)
+int rt722_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);
 
        return 0;
 }
-
-int sof_sdw_rt722_sdca_dmic_init(struct snd_soc_card *card,
-                                const struct snd_soc_acpi_link_adr *link,
-                                struct snd_soc_dai_link *dai_links,
-                                struct sof_sdw_codec_info *info,
-                                bool playback)
-{
-       dai_links->init = rt722_sdca_dmic_rtd_init;
-
-       return 0;
-}
 
 };
 
 static const char * const jack_codecs[] = {
-       "rt711", "rt712", "rt713"
+       "rt711", "rt712", "rt713", "rt722"
 };
 
 int rt_sdca_jack_rtd_init(struct snd_soc_pcm_runtime *rtd)