Skip to content

Commit

Permalink
[ALSA] cmipci: disable 'Modem' control on version 39 or newer chips
Browse files Browse the repository at this point in the history
On version 39 or newer chips, we better remove the 'Modem' control
because this register bit now mutes the front channels of the
multichannel stream.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
  • Loading branch information
Clemens Ladisch authored and Jaroslav Kysela committed Jan 31, 2008
1 parent befceea commit 69a0730
Showing 1 changed file with 5 additions and 7 deletions.
12 changes: 5 additions & 7 deletions sound/pci/cmipci.c
Original file line number Diff line number Diff line change
Expand Up @@ -2651,10 +2651,8 @@ static struct snd_kcontrol_new snd_cmipci_extra_mixer_switches[] __devinitdata =
};

/* card control switches */
static struct snd_kcontrol_new snd_cmipci_control_switches[] __devinitdata = {
// DEFINE_CARD_SWITCH("Joystick", joystick), /* now module option */
DEFINE_CARD_SWITCH("Modem", modem),
};
static struct snd_kcontrol_new snd_cmipci_modem_switch __devinitdata =
DEFINE_CARD_SWITCH("Modem", modem);


static int __devinit snd_cmipci_mixer_new(struct cmipci *cm, int pcm_spdif_device)
Expand Down Expand Up @@ -2735,9 +2733,9 @@ static int __devinit snd_cmipci_mixer_new(struct cmipci *cm, int pcm_spdif_devic
}

/* card switches */
sw = snd_cmipci_control_switches;
for (idx = 0; idx < ARRAY_SIZE(snd_cmipci_control_switches); idx++, sw++) {
err = snd_ctl_add(cm->card, snd_ctl_new1(sw, cm));
if (cm->chip_version < 39) {
err = snd_ctl_add(cm->card,
snd_ctl_new1(&snd_cmipci_modem_switch, cm));
if (err < 0)
return err;
}
Expand Down

0 comments on commit 69a0730

Please sign in to comment.