aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sound/pci/cmipci.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/sound/pci/cmipci.c b/sound/pci/cmipci.c
index 187203e55d39..8cb3436d0d9c 100644
--- a/sound/pci/cmipci.c
+++ b/sound/pci/cmipci.c
@@ -2651,10 +2651,8 @@ static struct snd_kcontrol_new snd_cmipci_extra_mixer_switches[] __devinitdata =
2651}; 2651};
2652 2652
2653/* card control switches */ 2653/* card control switches */
2654static struct snd_kcontrol_new snd_cmipci_control_switches[] __devinitdata = { 2654static struct snd_kcontrol_new snd_cmipci_modem_switch __devinitdata =
2655 // DEFINE_CARD_SWITCH("Joystick", joystick), /* now module option */ 2655DEFINE_CARD_SWITCH("Modem", modem);
2656 DEFINE_CARD_SWITCH("Modem", modem),
2657};
2658 2656
2659 2657
2660static int __devinit snd_cmipci_mixer_new(struct cmipci *cm, int pcm_spdif_device) 2658static int __devinit snd_cmipci_mixer_new(struct cmipci *cm, int pcm_spdif_device)
@@ -2735,9 +2733,9 @@ static int __devinit snd_cmipci_mixer_new(struct cmipci *cm, int pcm_spdif_devic
2735 } 2733 }
2736 2734
2737 /* card switches */ 2735 /* card switches */
2738 sw = snd_cmipci_control_switches; 2736 if (cm->chip_version < 39) {
2739 for (idx = 0; idx < ARRAY_SIZE(snd_cmipci_control_switches); idx++, sw++) { 2737 err = snd_ctl_add(cm->card,
2740 err = snd_ctl_add(cm->card, snd_ctl_new1(sw, cm)); 2738 snd_ctl_new1(&snd_cmipci_modem_switch, cm));
2741 if (err < 0) 2739 if (err < 0)
2742 return err; 2740 return err;
2743 } 2741 }