ASoC: atmel: atmel-pdmic: use modern dai_link style
[sfrench/cifs-2.6.git] / sound / soc / atmel / atmel-pdmic.c
index 915c2b064de1fcfca0fab6a8acabe648848422bc..f53213402d94ad278871d4703503302e45a16a04 100644 (file)
@@ -511,17 +511,30 @@ static int atmel_pdmic_asoc_card_init(struct device *dev,
 {
        struct snd_soc_dai_link *dai_link;
        struct atmel_pdmic *dd = snd_soc_card_get_drvdata(card);
+       struct snd_soc_dai_link_component *comp;
 
        dai_link = devm_kzalloc(dev, sizeof(*dai_link), GFP_KERNEL);
        if (!dai_link)
                return -ENOMEM;
 
+       comp = devm_kzalloc(dev, 3 * sizeof(*comp), GFP_KERNEL);
+       if (!comp)
+               return -ENOMEM;
+
+       dai_link->cpus          = &comp[0];
+       dai_link->codecs        = &comp[1];
+       dai_link->platforms     = &comp[2];
+
+       dai_link->num_cpus      = 1;
+       dai_link->num_codecs    = 1;
+       dai_link->num_platforms = 1;
+
        dai_link->name                  = "PDMIC";
        dai_link->stream_name           = "PDMIC PCM";
-       dai_link->codec_dai_name        = ATMEL_PDMIC_CODEC_DAI_NAME;
-       dai_link->cpu_dai_name          = dev_name(dev);
-       dai_link->codec_name            = dev_name(dev);
-       dai_link->platform_name         = dev_name(dev);
+       dai_link->codecs->dai_name      = ATMEL_PDMIC_CODEC_DAI_NAME;
+       dai_link->cpus->dai_name        = dev_name(dev);
+       dai_link->codecs->name          = dev_name(dev);
+       dai_link->platforms->name       = dev_name(dev);
 
        card->dai_link  = dai_link;
        card->num_links = 1;