struct snd_soc_dapm_context *dapm = &codec->dapm;
        int err;
 
-       /* Add h1940 specific widgets */
-       err = snd_soc_dapm_new_controls(dapm, uda1380_dapm_widgets,
-                                 ARRAY_SIZE(uda1380_dapm_widgets));
-       if (err)
-               return err;
-
-       /* Set up h1940 specific audio path audio_mapnects */
-       err = snd_soc_dapm_add_routes(dapm, audio_map,
-                                     ARRAY_SIZE(audio_map));
-       if (err)
-               return err;
-
        snd_soc_dapm_enable_pin(dapm, "Headphone Jack");
        snd_soc_dapm_enable_pin(dapm, "Speaker");
        snd_soc_dapm_enable_pin(dapm, "Mic Jack");
        .name = "h1940",
        .dai_link = h1940_uda1380_dai,
        .num_links = ARRAY_SIZE(h1940_uda1380_dai),
+
+       .dapm_widgets = uda1380_dapm_widgets,
+       .num_dapm_widgets = ARRAY_SIZE(uda1380_dapm_widgets),
+       .dapm_routes = audio_map,
+       .num_dapm_routes = ARRAY_SIZE(audio_map),
 };
 
 static int __init h1940_init(void)