diff options
Diffstat (limited to 'sound/soc/pxa/poodle.c')
-rw-r--r-- | sound/soc/pxa/poodle.c | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/sound/soc/pxa/poodle.c b/sound/soc/pxa/poodle.c index 84edd0385a21..6298ee115e27 100644 --- a/sound/soc/pxa/poodle.c +++ b/sound/soc/pxa/poodle.c | |||
@@ -23,7 +23,6 @@ | |||
23 | #include <sound/core.h> | 23 | #include <sound/core.h> |
24 | #include <sound/pcm.h> | 24 | #include <sound/pcm.h> |
25 | #include <sound/soc.h> | 25 | #include <sound/soc.h> |
26 | #include <sound/soc-dapm.h> | ||
27 | 26 | ||
28 | #include <asm/mach-types.h> | 27 | #include <asm/mach-types.h> |
29 | #include <asm/hardware/locomo.h> | 28 | #include <asm/hardware/locomo.h> |
@@ -46,6 +45,8 @@ static int poodle_spk_func; | |||
46 | 45 | ||
47 | static void poodle_ext_control(struct snd_soc_codec *codec) | 46 | static void poodle_ext_control(struct snd_soc_codec *codec) |
48 | { | 47 | { |
48 | struct snd_soc_dapm_context *dapm = &codec->dapm; | ||
49 | |||
49 | /* set up jack connection */ | 50 | /* set up jack connection */ |
50 | if (poodle_jack_func == POODLE_HP) { | 51 | if (poodle_jack_func == POODLE_HP) { |
51 | /* set = unmute headphone */ | 52 | /* set = unmute headphone */ |
@@ -53,23 +54,23 @@ static void poodle_ext_control(struct snd_soc_codec *codec) | |||
53 | POODLE_LOCOMO_GPIO_MUTE_L, 1); | 54 | POODLE_LOCOMO_GPIO_MUTE_L, 1); |
54 | locomo_gpio_write(&poodle_locomo_device.dev, | 55 | locomo_gpio_write(&poodle_locomo_device.dev, |
55 | POODLE_LOCOMO_GPIO_MUTE_R, 1); | 56 | POODLE_LOCOMO_GPIO_MUTE_R, 1); |
56 | snd_soc_dapm_enable_pin(codec, "Headphone Jack"); | 57 | snd_soc_dapm_enable_pin(dapm, "Headphone Jack"); |
57 | } else { | 58 | } else { |
58 | locomo_gpio_write(&poodle_locomo_device.dev, | 59 | locomo_gpio_write(&poodle_locomo_device.dev, |
59 | POODLE_LOCOMO_GPIO_MUTE_L, 0); | 60 | POODLE_LOCOMO_GPIO_MUTE_L, 0); |
60 | locomo_gpio_write(&poodle_locomo_device.dev, | 61 | locomo_gpio_write(&poodle_locomo_device.dev, |
61 | POODLE_LOCOMO_GPIO_MUTE_R, 0); | 62 | POODLE_LOCOMO_GPIO_MUTE_R, 0); |
62 | snd_soc_dapm_disable_pin(codec, "Headphone Jack"); | 63 | snd_soc_dapm_disable_pin(dapm, "Headphone Jack"); |
63 | } | 64 | } |
64 | 65 | ||
65 | /* set the enpoints to their new connetion states */ | 66 | /* set the enpoints to their new connetion states */ |
66 | if (poodle_spk_func == POODLE_SPK_ON) | 67 | if (poodle_spk_func == POODLE_SPK_ON) |
67 | snd_soc_dapm_enable_pin(codec, "Ext Spk"); | 68 | snd_soc_dapm_enable_pin(dapm, "Ext Spk"); |
68 | else | 69 | else |
69 | snd_soc_dapm_disable_pin(codec, "Ext Spk"); | 70 | snd_soc_dapm_disable_pin(dapm, "Ext Spk"); |
70 | 71 | ||
71 | /* signal a DAPM event */ | 72 | /* signal a DAPM event */ |
72 | snd_soc_dapm_sync(codec); | 73 | snd_soc_dapm_sync(dapm); |
73 | } | 74 | } |
74 | 75 | ||
75 | static int poodle_startup(struct snd_pcm_substream *substream) | 76 | static int poodle_startup(struct snd_pcm_substream *substream) |
@@ -244,11 +245,12 @@ static const struct snd_kcontrol_new wm8731_poodle_controls[] = { | |||
244 | static int poodle_wm8731_init(struct snd_soc_pcm_runtime *rtd) | 245 | static int poodle_wm8731_init(struct snd_soc_pcm_runtime *rtd) |
245 | { | 246 | { |
246 | struct snd_soc_codec *codec = rtd->codec; | 247 | struct snd_soc_codec *codec = rtd->codec; |
248 | struct snd_soc_dapm_context *dapm = &codec->dapm; | ||
247 | int err; | 249 | int err; |
248 | 250 | ||
249 | snd_soc_dapm_nc_pin(codec, "LLINEIN"); | 251 | snd_soc_dapm_nc_pin(dapm, "LLINEIN"); |
250 | snd_soc_dapm_nc_pin(codec, "RLINEIN"); | 252 | snd_soc_dapm_nc_pin(dapm, "RLINEIN"); |
251 | snd_soc_dapm_enable_pin(codec, "MICIN"); | 253 | snd_soc_dapm_enable_pin(dapm, "MICIN"); |
252 | 254 | ||
253 | /* Add poodle specific controls */ | 255 | /* Add poodle specific controls */ |
254 | err = snd_soc_add_controls(codec, wm8731_poodle_controls, | 256 | err = snd_soc_add_controls(codec, wm8731_poodle_controls, |
@@ -257,13 +259,13 @@ static int poodle_wm8731_init(struct snd_soc_pcm_runtime *rtd) | |||
257 | return err; | 259 | return err; |
258 | 260 | ||
259 | /* Add poodle specific widgets */ | 261 | /* Add poodle specific widgets */ |
260 | snd_soc_dapm_new_controls(codec, wm8731_dapm_widgets, | 262 | snd_soc_dapm_new_controls(dapm, wm8731_dapm_widgets, |
261 | ARRAY_SIZE(wm8731_dapm_widgets)); | 263 | ARRAY_SIZE(wm8731_dapm_widgets)); |
262 | 264 | ||
263 | /* Set up poodle specific audio path audio_map */ | 265 | /* Set up poodle specific audio path audio_map */ |
264 | snd_soc_dapm_add_routes(codec, audio_map, ARRAY_SIZE(audio_map)); | 266 | snd_soc_dapm_add_routes(dapm, audio_map, ARRAY_SIZE(audio_map)); |
265 | 267 | ||
266 | snd_soc_dapm_sync(codec); | 268 | snd_soc_dapm_sync(dapm); |
267 | return 0; | 269 | return 0; |
268 | } | 270 | } |
269 | 271 | ||