diff options
author | Lu Guanqun <guanqun.lu@intel.com> | 2011-03-30 09:53:12 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-03-30 17:21:58 -0400 |
commit | 983347785bb3807c125e7c00f31790ed11c231fc (patch) | |
tree | 4fd2b464a9920efc6239ea24a7e9fbe6da9b4ed8 /sound/soc | |
parent | 7ad7dd125ae936719205672565ef48df018731c4 (diff) |
ASoC: Use data based init for wm9712 DAPM
Signed-off-by: Lu Guanqun <guanqun.lu@intel.com>
Acked-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/codecs/wm9712.c | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/sound/soc/codecs/wm9712.c b/sound/soc/codecs/wm9712.c index bf5d4ef1a2a6..90117f8156e8 100644 --- a/sound/soc/codecs/wm9712.c +++ b/sound/soc/codecs/wm9712.c | |||
@@ -332,7 +332,7 @@ SND_SOC_DAPM_INPUT("MIC1"), | |||
332 | SND_SOC_DAPM_INPUT("MIC2"), | 332 | SND_SOC_DAPM_INPUT("MIC2"), |
333 | }; | 333 | }; |
334 | 334 | ||
335 | static const struct snd_soc_dapm_route audio_map[] = { | 335 | static const struct snd_soc_dapm_route wm9712_audio_map[] = { |
336 | /* virtual mixer - mixes left & right channels for spk and mono */ | 336 | /* virtual mixer - mixes left & right channels for spk and mono */ |
337 | {"AC97 Mixer", NULL, "Left DAC"}, | 337 | {"AC97 Mixer", NULL, "Left DAC"}, |
338 | {"AC97 Mixer", NULL, "Right DAC"}, | 338 | {"AC97 Mixer", NULL, "Right DAC"}, |
@@ -429,17 +429,6 @@ static const struct snd_soc_dapm_route audio_map[] = { | |||
429 | {"ROUT2", NULL, "Speaker PGA"}, | 429 | {"ROUT2", NULL, "Speaker PGA"}, |
430 | }; | 430 | }; |
431 | 431 | ||
432 | static int wm9712_add_widgets(struct snd_soc_codec *codec) | ||
433 | { | ||
434 | struct snd_soc_dapm_context *dapm = &codec->dapm; | ||
435 | |||
436 | snd_soc_dapm_new_controls(dapm, wm9712_dapm_widgets, | ||
437 | ARRAY_SIZE(wm9712_dapm_widgets)); | ||
438 | snd_soc_dapm_add_routes(dapm, audio_map, ARRAY_SIZE(audio_map)); | ||
439 | |||
440 | return 0; | ||
441 | } | ||
442 | |||
443 | static unsigned int ac97_read(struct snd_soc_codec *codec, | 432 | static unsigned int ac97_read(struct snd_soc_codec *codec, |
444 | unsigned int reg) | 433 | unsigned int reg) |
445 | { | 434 | { |
@@ -651,7 +640,6 @@ static int wm9712_soc_probe(struct snd_soc_codec *codec) | |||
651 | wm9712_set_bias_level(codec, SND_SOC_BIAS_STANDBY); | 640 | wm9712_set_bias_level(codec, SND_SOC_BIAS_STANDBY); |
652 | snd_soc_add_controls(codec, wm9712_snd_ac97_controls, | 641 | snd_soc_add_controls(codec, wm9712_snd_ac97_controls, |
653 | ARRAY_SIZE(wm9712_snd_ac97_controls)); | 642 | ARRAY_SIZE(wm9712_snd_ac97_controls)); |
654 | wm9712_add_widgets(codec); | ||
655 | 643 | ||
656 | return 0; | 644 | return 0; |
657 | 645 | ||
@@ -678,6 +666,10 @@ static struct snd_soc_codec_driver soc_codec_dev_wm9712 = { | |||
678 | .reg_word_size = sizeof(u16), | 666 | .reg_word_size = sizeof(u16), |
679 | .reg_cache_step = 2, | 667 | .reg_cache_step = 2, |
680 | .reg_cache_default = wm9712_reg, | 668 | .reg_cache_default = wm9712_reg, |
669 | .dapm_widgets = wm9712_dapm_widgets, | ||
670 | .num_dapm_widgets = ARRAY_SIZE(wm9712_dapm_widgets), | ||
671 | .dapm_routes = wm9712_audio_map, | ||
672 | .num_dapm_routes = ARRAY_SIZE(wm9712_audio_map), | ||
681 | }; | 673 | }; |
682 | 674 | ||
683 | static __devinit int wm9712_probe(struct platform_device *pdev) | 675 | static __devinit int wm9712_probe(struct platform_device *pdev) |