ALSA: HDA: Fix master control for Cirrus Logic 421X
authorDavid Henningsson <david.henningsson@canonical.com>
Mon, 2 Jan 2012 11:40:15 +0000 (12:40 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 26 Jan 2012 00:13:08 +0000 (16:13 -0800)
commit 40d03e63e91af8ddccdfd5a536cc2a6e51433e1d upstream.

The control name "HP/Speakers" is non-standard, and since there is
only one DAC on this chip there is no need for a virtual master
anyway.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

sound/pci/hda/patch_cirrus.c

index 70a7abd..f55ceb6 100644 (file)
@@ -1771,30 +1771,19 @@ static int build_cs421x_output(struct hda_codec *codec)
        struct auto_pin_cfg *cfg = &spec->autocfg;
        struct snd_kcontrol *kctl;
        int err;
-       char *name = "HP/Speakers";
+       char *name = "Master";
 
        fix_volume_caps(codec, dac);
-       if (!spec->vmaster_sw) {
-               err = add_vmaster(codec, dac);
-               if (err < 0)
-                       return err;
-       }
 
        err = add_mute(codec, name, 0,
                        HDA_COMPOSE_AMP_VAL(dac, 3, 0, HDA_OUTPUT), 0, &kctl);
        if (err < 0)
                return err;
-       err = snd_ctl_add_slave(spec->vmaster_sw, kctl);
-       if (err < 0)
-               return err;
 
        err = add_volume(codec, name, 0,
                        HDA_COMPOSE_AMP_VAL(dac, 3, 0, HDA_OUTPUT), 0, &kctl);
        if (err < 0)
                return err;
-       err = snd_ctl_add_slave(spec->vmaster_vol, kctl);
-       if (err < 0)
-               return err;
 
        if (cfg->speaker_outs) {
                err = snd_hda_ctl_add(codec, 0,