diff options
Diffstat (limited to 'sound/soc/pxa/magician.c')
-rw-r--r-- | sound/soc/pxa/magician.c | 36 |
1 files changed, 19 insertions, 17 deletions
diff --git a/sound/soc/pxa/magician.c b/sound/soc/pxa/magician.c index 5ef0526924b9..67dcc36cd621 100644 --- a/sound/soc/pxa/magician.c +++ b/sound/soc/pxa/magician.c | |||
@@ -26,7 +26,6 @@ | |||
26 | #include <sound/pcm.h> | 26 | #include <sound/pcm.h> |
27 | #include <sound/pcm_params.h> | 27 | #include <sound/pcm_params.h> |
28 | #include <sound/soc.h> | 28 | #include <sound/soc.h> |
29 | #include <sound/soc-dapm.h> | ||
30 | #include <sound/uda1380.h> | 29 | #include <sound/uda1380.h> |
31 | 30 | ||
32 | #include <mach/magician.h> | 31 | #include <mach/magician.h> |
@@ -44,27 +43,29 @@ static int magician_in_sel = MAGICIAN_MIC; | |||
44 | 43 | ||
45 | static void magician_ext_control(struct snd_soc_codec *codec) | 44 | static void magician_ext_control(struct snd_soc_codec *codec) |
46 | { | 45 | { |
46 | struct snd_soc_dapm_context *dapm = &codec->dapm; | ||
47 | |||
47 | if (magician_spk_switch) | 48 | if (magician_spk_switch) |
48 | snd_soc_dapm_enable_pin(codec, "Speaker"); | 49 | snd_soc_dapm_enable_pin(dapm, "Speaker"); |
49 | else | 50 | else |
50 | snd_soc_dapm_disable_pin(codec, "Speaker"); | 51 | snd_soc_dapm_disable_pin(dapm, "Speaker"); |
51 | if (magician_hp_switch) | 52 | if (magician_hp_switch) |
52 | snd_soc_dapm_enable_pin(codec, "Headphone Jack"); | 53 | snd_soc_dapm_enable_pin(dapm, "Headphone Jack"); |
53 | else | 54 | else |
54 | snd_soc_dapm_disable_pin(codec, "Headphone Jack"); | 55 | snd_soc_dapm_disable_pin(dapm, "Headphone Jack"); |
55 | 56 | ||
56 | switch (magician_in_sel) { | 57 | switch (magician_in_sel) { |
57 | case MAGICIAN_MIC: | 58 | case MAGICIAN_MIC: |
58 | snd_soc_dapm_disable_pin(codec, "Headset Mic"); | 59 | snd_soc_dapm_disable_pin(dapm, "Headset Mic"); |
59 | snd_soc_dapm_enable_pin(codec, "Call Mic"); | 60 | snd_soc_dapm_enable_pin(dapm, "Call Mic"); |
60 | break; | 61 | break; |
61 | case MAGICIAN_MIC_EXT: | 62 | case MAGICIAN_MIC_EXT: |
62 | snd_soc_dapm_disable_pin(codec, "Call Mic"); | 63 | snd_soc_dapm_disable_pin(dapm, "Call Mic"); |
63 | snd_soc_dapm_enable_pin(codec, "Headset Mic"); | 64 | snd_soc_dapm_enable_pin(dapm, "Headset Mic"); |
64 | break; | 65 | break; |
65 | } | 66 | } |
66 | 67 | ||
67 | snd_soc_dapm_sync(codec); | 68 | snd_soc_dapm_sync(dapm); |
68 | } | 69 | } |
69 | 70 | ||
70 | static int magician_startup(struct snd_pcm_substream *substream) | 71 | static int magician_startup(struct snd_pcm_substream *substream) |
@@ -399,15 +400,16 @@ static const struct snd_kcontrol_new uda1380_magician_controls[] = { | |||
399 | static int magician_uda1380_init(struct snd_soc_pcm_runtime *rtd) | 400 | static int magician_uda1380_init(struct snd_soc_pcm_runtime *rtd) |
400 | { | 401 | { |
401 | struct snd_soc_codec *codec = rtd->codec; | 402 | struct snd_soc_codec *codec = rtd->codec; |
403 | struct snd_soc_dapm_context *dapm = &codec->dapm; | ||
402 | int err; | 404 | int err; |
403 | 405 | ||
404 | /* NC codec pins */ | 406 | /* NC codec pins */ |
405 | snd_soc_dapm_nc_pin(codec, "VOUTLHP"); | 407 | snd_soc_dapm_nc_pin(dapm, "VOUTLHP"); |
406 | snd_soc_dapm_nc_pin(codec, "VOUTRHP"); | 408 | snd_soc_dapm_nc_pin(dapm, "VOUTRHP"); |
407 | 409 | ||
408 | /* FIXME: is anything connected here? */ | 410 | /* FIXME: is anything connected here? */ |
409 | snd_soc_dapm_nc_pin(codec, "VINL"); | 411 | snd_soc_dapm_nc_pin(dapm, "VINL"); |
410 | snd_soc_dapm_nc_pin(codec, "VINR"); | 412 | snd_soc_dapm_nc_pin(dapm, "VINR"); |
411 | 413 | ||
412 | /* Add magician specific controls */ | 414 | /* Add magician specific controls */ |
413 | err = snd_soc_add_controls(codec, uda1380_magician_controls, | 415 | err = snd_soc_add_controls(codec, uda1380_magician_controls, |
@@ -416,13 +418,13 @@ static int magician_uda1380_init(struct snd_soc_pcm_runtime *rtd) | |||
416 | return err; | 418 | return err; |
417 | 419 | ||
418 | /* Add magician specific widgets */ | 420 | /* Add magician specific widgets */ |
419 | snd_soc_dapm_new_controls(codec, uda1380_dapm_widgets, | 421 | snd_soc_dapm_new_controls(dapm, uda1380_dapm_widgets, |
420 | ARRAY_SIZE(uda1380_dapm_widgets)); | 422 | ARRAY_SIZE(uda1380_dapm_widgets)); |
421 | 423 | ||
422 | /* Set up magician specific audio path interconnects */ | 424 | /* Set up magician specific audio path interconnects */ |
423 | snd_soc_dapm_add_routes(codec, audio_map, ARRAY_SIZE(audio_map)); | 425 | snd_soc_dapm_add_routes(dapm, audio_map, ARRAY_SIZE(audio_map)); |
424 | 426 | ||
425 | snd_soc_dapm_sync(codec); | 427 | snd_soc_dapm_sync(dapm); |
426 | return 0; | 428 | return 0; |
427 | } | 429 | } |
428 | 430 | ||