ASoC: zoom2: Let core to deal with the DAPM widgets
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Mon, 10 Oct 2011 12:34:13 +0000 (15:34 +0300)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Mon, 10 Oct 2011 15:18:11 +0000 (16:18 +0100)
Pass the DAPM widgets/routes via the snd_soc_card struct
to core.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Misael Lopez Cruz <misael.lopez@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/omap/zoom2.c

index 9a8288d5ea49939943905f23f2e85412eda0fe5e..4d01e16e036d2303d29dcfcba059f35f6a7abde7 100644 (file)
@@ -98,16 +98,6 @@ static int zoom2_twl4030_init(struct snd_soc_pcm_runtime *rtd)
 {
        struct snd_soc_codec *codec = rtd->codec;
        struct snd_soc_dapm_context *dapm = &codec->dapm;
-       int ret;
-
-       /* Add Zoom2 specific widgets */
-       ret = snd_soc_dapm_new_controls(dapm, zoom2_twl4030_dapm_widgets,
-                               ARRAY_SIZE(zoom2_twl4030_dapm_widgets));
-       if (ret)
-               return ret;
-
-       /* Set up Zoom2 specific audio path audio_map */
-       snd_soc_dapm_add_routes(dapm, audio_map, ARRAY_SIZE(audio_map));
 
        /* Zoom2 connected pins */
        snd_soc_dapm_enable_pin(dapm, "Ext Mic");
@@ -175,6 +165,11 @@ static struct snd_soc_card snd_soc_zoom2 = {
        .name = "Zoom2",
        .dai_link = zoom2_dai,
        .num_links = ARRAY_SIZE(zoom2_dai),
+
+       .dapm_widgets = zoom2_twl4030_dapm_widgets,
+       .num_dapm_widgets = ARRAY_SIZE(zoom2_twl4030_dapm_widgets),
+       .dapm_routes = audio_map,
+       .num_dapm_routes = ARRAY_SIZE(audio_map),
 };
 
 static struct platform_device *zoom2_snd_device;