summaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorMilan plzik <milan.plzik@gmail.com>2008-01-10 14:39:46 +0100
committerJaroslav Kysela <perex@perex.cz>2008-01-31 17:29:50 +0100
commit1b075e3f7323f85f7e9cc7b6ae7a36c33d9ce76e (patch)
tree53290142224d71c1a109efdbc5e975bc5a8e5f2c /sound/soc
parent[ALSA] soc - Ensure PCMs are suspended (diff)
downloadlinux-1b075e3f7323f85f7e9cc7b6ae7a36c33d9ce76e.tar.xz
linux-1b075e3f7323f85f7e9cc7b6ae7a36c33d9ce76e.zip
[ALSA] soc - Fix power switching support for DAPM_SWITCH widgets
Signed-off-by: Milan plzik <milan.plzik@gmail.com> Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/soc-dapm.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c
index 7eb6c5c03775..91d58b56470e 100644
--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -691,7 +691,7 @@ static int dapm_mux_update_power(struct snd_soc_dapm_widget *widget,
return 0;
}
-/* test and update the power status of a mixer widget */
+/* test and update the power status of a mixer or switch widget */
static int dapm_mixer_update_power(struct snd_soc_dapm_widget *widget,
struct snd_kcontrol *kcontrol, int reg,
int val_mask, int val, int invert)
@@ -699,7 +699,8 @@ static int dapm_mixer_update_power(struct snd_soc_dapm_widget *widget,
struct snd_soc_dapm_path *path;
int found = 0;
- if (widget->id != snd_soc_dapm_mixer)
+ if (widget->id != snd_soc_dapm_mixer &&
+ widget->id != snd_soc_dapm_switch)
return -ENODEV;
if (!snd_soc_test_bits(widget->codec, reg, val_mask, val))