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)
committerTakashi Iwai <tiwai@suse.de>
Sun, 8 Jan 2012 08:55:13 +0000 (09:55 +0100)
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.

Cc: stable@kernel.org
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_cirrus.c

index acfb64534bf09672228e0e4d59394166c833cf42..9139558950941ed7dcbc583e189b00d96abf06dc 100644 (file)
@@ -1779,30 +1779,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,