aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/sound/pci/au88x0
diff options
context:
space:
mode:
authorRaymond Yau <superquad.vortex2@gmail.com>2012-06-04 14:59:55 +0800
committerTakashi Iwai <tiwai@suse.de>2012-06-05 18:02:27 +0200
commit223f18e4482fd90b7cdabb222fad5ca502dc0028 (patch)
tree75775c9f0b4a0b60c43bf7149de1319c779d3c34 /sound/pci/au88x0
parentLinux 3.5-rc1 (diff)
downloadwireguard-linux-223f18e4482fd90b7cdabb222fad5ca502dc0028.tar.xz
wireguard-linux-223f18e4482fd90b7cdabb222fad5ca502dc0028.zip
ALSA: au88x0 - Remove unused "Master Mono" Playback Volume and Playback Switch of ac97 codec
Remove "Master Mono Playback Volume" and "Master Mono Playback Switch" of ac97 mixer since au88x0 does no use "Master Mono Pin" of AC97 codec even au88x0 support mono playback Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/au88x0')
-rw-r--r--sound/pci/au88x0/au88x0_mixer.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/pci/au88x0/au88x0_mixer.c b/sound/pci/au88x0/au88x0_mixer.c
index 557c782ae4fc..fa13efbebdaf 100644
--- a/sound/pci/au88x0/au88x0_mixer.c
+++ b/sound/pci/au88x0/au88x0_mixer.c
@@ -10,6 +10,15 @@
#include <sound/core.h>
#include "au88x0.h"
+static int remove_ctl(struct snd_card *card, const char *name)
+{
+ struct snd_ctl_elem_id id;
+ memset(&id, 0, sizeof(id));
+ strcpy(id.name, name);
+ id.iface = SNDRV_CTL_ELEM_IFACE_MIXER;
+ return snd_ctl_remove_id(card, &id);
+}
+
static int __devinit snd_vortex_mixer(vortex_t * vortex)
{
struct snd_ac97_bus *pbus;
@@ -28,5 +37,7 @@ static int __devinit snd_vortex_mixer(vortex_t * vortex)
ac97.scaps = AC97_SCAP_NO_SPDIF;
err = snd_ac97_mixer(pbus, &ac97, &vortex->codec);
vortex->isquad = ((vortex->codec == NULL) ? 0 : (vortex->codec->ext_id&0x80));
+ remove_ctl(vortex->card, "Master Mono Playback Volume");
+ remove_ctl(vortex->card, "Master Mono Playback Switch");
return err;
}