.channels_max = 2,
 };
 
+SND_SOC_DAILINK_DEFS(cpu,
+       DAILINK_COMP_ARRAY(COMP_CPU("samsung-i2s.0")),
+       DAILINK_COMP_ARRAY(COMP_CODEC("wm5100.1-001a", "wm5100-aif1")),
+       DAILINK_COMP_ARRAY(COMP_PLATFORM("samsung-i2s.0")));
+
+SND_SOC_DAILINK_DEFS(baseband,
+       DAILINK_COMP_ARRAY(COMP_CPU("wm5100-aif2")),
+       DAILINK_COMP_ARRAY(COMP_CODEC("wm1250-ev1.1-0027", "wm1250-ev1")));
+
+SND_SOC_DAILINK_DEFS(speaker,
+       DAILINK_COMP_ARRAY(COMP_CPU("wm5100-aif3")),
+       DAILINK_COMP_ARRAY(COMP_CODEC("wm9081.1-006c", "wm9081-hifi")));
+
 static struct snd_soc_dai_link lowland_dai[] = {
        {
                .name = "CPU",
                .stream_name = "CPU",
-               .cpu_dai_name = "samsung-i2s.0",
-               .codec_dai_name = "wm5100-aif1",
-               .platform_name = "samsung-i2s.0",
-               .codec_name = "wm5100.1-001a",
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
                                SND_SOC_DAIFMT_CBM_CFM,
                .init = lowland_wm5100_init,
+               SND_SOC_DAILINK_REG(cpu),
        },
        {
                .name = "Baseband",
                .stream_name = "Baseband",
-               .cpu_dai_name = "wm5100-aif2",
-               .codec_dai_name = "wm1250-ev1",
-               .codec_name = "wm1250-ev1.1-0027",
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
                                SND_SOC_DAIFMT_CBM_CFM,
                .ignore_suspend = 1,
+               SND_SOC_DAILINK_REG(baseband),
        },
        {
                .name = "Sub Speaker",
                .stream_name = "Sub Speaker",
-               .cpu_dai_name = "wm5100-aif3",
-               .codec_dai_name = "wm9081-hifi",
-               .codec_name = "wm9081.1-006c",
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
                                SND_SOC_DAIFMT_CBM_CFM,
                .ignore_suspend = 1,
                .params = &sub_params,
                .init = lowland_wm9081_init,
+               SND_SOC_DAILINK_REG(speaker),
        },
 };