ASoC: wm8995: Use table based DAPM and control setup
authorLars-Peter Clausen <lars@metafoo.de>
Wed, 5 Nov 2014 09:46:36 +0000 (10:46 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 5 Nov 2014 14:49:51 +0000 (14:49 +0000)
Makes the code a bit cleaner.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/wm8995.c

index 1288edeb8c7dea9530620345028fc990ac55cb6c..e40c8a662183cf22381099643799cf251680b6bf 100644 (file)
@@ -2102,13 +2102,6 @@ static int wm8995_probe(struct snd_soc_codec *codec)
 
        wm8995_update_class_w(codec);
 
-       snd_soc_add_codec_controls(codec, wm8995_snd_controls,
-                            ARRAY_SIZE(wm8995_snd_controls));
-       snd_soc_dapm_new_controls(&codec->dapm, wm8995_dapm_widgets,
-                                 ARRAY_SIZE(wm8995_dapm_widgets));
-       snd_soc_dapm_add_routes(&codec->dapm, wm8995_intercon,
-                               ARRAY_SIZE(wm8995_intercon));
-
        return 0;
 
 err_reg_enable:
@@ -2205,6 +2198,13 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8995 = {
        .remove = wm8995_remove,
        .set_bias_level = wm8995_set_bias_level,
        .idle_bias_off = true,
+
+       .controls = wm8995_snd_controls,
+       .num_controls = ARRAY_SIZE(wm8995_snd_controls),
+       .dapm_widgets = wm8995_dapm_widgets,
+       .num_dapm_widgets = ARRAY_SIZE(wm8995_dapm_widgets),
+       .dapm_routes = wm8995_intercon,
+       .num_dapm_routes = ARRAY_SIZE(wm8995_intercon),
 };
 
 static struct regmap_config wm8995_regmap = {