ASoC: atmel: atmel-classd: use modern dai_link style
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Thu, 6 Jun 2019 04:14:04 +0000 (13:14 +0900)
committerMark Brown <broonie@kernel.org>
Thu, 6 Jun 2019 20:39:50 +0000 (21:39 +0100)
ASoC is now supporting modern style dai_link
(= snd_soc_dai_link_component) for CPU/Codec/Platform.
This patch switches to use it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/atmel/atmel-classd.c

index 3d70061..cfebbeb 100644 (file)
@@ -500,17 +500,30 @@ static int atmel_classd_asoc_card_init(struct device *dev,
 {
        struct snd_soc_dai_link *dai_link;
        struct atmel_classd *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                  = "CLASSD";
        dai_link->stream_name           = "CLASSD PCM";
-       dai_link->codec_dai_name        = ATMEL_CLASSD_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_CLASSD_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;