Unverified Commit d6db366a authored by Kuninori Morimoto's avatar Kuninori Morimoto Committed by Mark Brown
Browse files

ASoC: ti: omap-twl4030: use modern dai_link style



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: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent bc9dfc4c
Loading
Loading
Loading
Loading
+20 −16
Original line number Diff line number Diff line
@@ -209,26 +209,30 @@ static int omap_twl4030_init(struct snd_soc_pcm_runtime *rtd)
}

/* Digital audio interface glue - connects codec <--> CPU */
SND_SOC_DAILINK_DEFS(hifi,
	DAILINK_COMP_ARRAY(COMP_CPU("omap-mcbsp.2")),
	DAILINK_COMP_ARRAY(COMP_CODEC("twl4030-codec", "twl4030-hifi")),
	DAILINK_COMP_ARRAY(COMP_PLATFORM("omap-mcbsp.2")));

SND_SOC_DAILINK_DEFS(voice,
	DAILINK_COMP_ARRAY(COMP_CPU("omap-mcbsp.3")),
	DAILINK_COMP_ARRAY(COMP_CODEC("twl4030-codec", "twl4030-voice")),
	DAILINK_COMP_ARRAY(COMP_PLATFORM("omap-mcbsp.3")));

static struct snd_soc_dai_link omap_twl4030_dai_links[] = {
	{
		.name = "TWL4030 HiFi",
		.stream_name = "TWL4030 HiFi",
		.cpu_dai_name = "omap-mcbsp.2",
		.codec_dai_name = "twl4030-hifi",
		.platform_name = "omap-mcbsp.2",
		.codec_name = "twl4030-codec",
		.init = omap_twl4030_init,
		.ops = &omap_twl4030_ops,
		SND_SOC_DAILINK_REG(hifi),
	},
	{
		.name = "TWL4030 Voice",
		.stream_name = "TWL4030 Voice",
		.cpu_dai_name = "omap-mcbsp.3",
		.codec_dai_name = "twl4030-voice",
		.platform_name = "omap-mcbsp.3",
		.codec_name = "twl4030-codec",
		.dai_fmt = SND_SOC_DAIFMT_DSP_A | SND_SOC_DAIFMT_IB_NF |
			   SND_SOC_DAIFMT_CBM_CFM,
		SND_SOC_DAILINK_REG(voice),
	},
};

@@ -272,21 +276,21 @@ static int omap_twl4030_probe(struct platform_device *pdev)
			dev_err(&pdev->dev, "McBSP node is not provided\n");
			return -EINVAL;
		}
		omap_twl4030_dai_links[0].cpu_dai_name  = NULL;
		omap_twl4030_dai_links[0].cpu_of_node = dai_node;
		omap_twl4030_dai_links[0].cpus->dai_name  = NULL;
		omap_twl4030_dai_links[0].cpus->of_node = dai_node;

		omap_twl4030_dai_links[0].platform_name  = NULL;
		omap_twl4030_dai_links[0].platform_of_node = dai_node;
		omap_twl4030_dai_links[0].platforms->name  = NULL;
		omap_twl4030_dai_links[0].platforms->of_node = dai_node;

		dai_node = of_parse_phandle(node, "ti,mcbsp-voice", 0);
		if (!dai_node) {
			card->num_links = 1;
		} else {
			omap_twl4030_dai_links[1].cpu_dai_name  = NULL;
			omap_twl4030_dai_links[1].cpu_of_node = dai_node;
			omap_twl4030_dai_links[1].cpus->dai_name  = NULL;
			omap_twl4030_dai_links[1].cpus->of_node = dai_node;

			omap_twl4030_dai_links[1].platform_name  = NULL;
			omap_twl4030_dai_links[1].platform_of_node = dai_node;
			omap_twl4030_dai_links[1].platforms->name  = NULL;
			omap_twl4030_dai_links[1].platforms->of_node = dai_node;
		}

		priv->jack_detect = of_get_named_gpio(node,