diff options
Diffstat (limited to 'sound/pci/cmipci.c')
-rw-r--r-- | sound/pci/cmipci.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/sound/pci/cmipci.c b/sound/pci/cmipci.c index 135f30860753..9971b5b7735b 100644 --- a/sound/pci/cmipci.c +++ b/sound/pci/cmipci.c | |||
@@ -2744,12 +2744,13 @@ static int __devinit snd_cmipci_mixer_new(struct cmipci *cm, int pcm_spdif_devic | |||
2744 | } | 2744 | } |
2745 | 2745 | ||
2746 | for (idx = 0; idx < CM_SAVED_MIXERS; idx++) { | 2746 | for (idx = 0; idx < CM_SAVED_MIXERS; idx++) { |
2747 | struct snd_ctl_elem_id id; | 2747 | struct snd_ctl_elem_id elem_id; |
2748 | struct snd_kcontrol *ctl; | 2748 | struct snd_kcontrol *ctl; |
2749 | memset(&id, 0, sizeof(id)); | 2749 | memset(&elem_id, 0, sizeof(elem_id)); |
2750 | id.iface = SNDRV_CTL_ELEM_IFACE_MIXER; | 2750 | elem_id.iface = SNDRV_CTL_ELEM_IFACE_MIXER; |
2751 | strcpy(id.name, cm_saved_mixer[idx].name); | 2751 | strcpy(elem_id.name, cm_saved_mixer[idx].name); |
2752 | if ((ctl = snd_ctl_find_id(cm->card, &id)) != NULL) | 2752 | ctl = snd_ctl_find_id(cm->card, &elem_id); |
2753 | if (ctl) | ||
2753 | cm->mixer_res_ctl[idx] = ctl; | 2754 | cm->mixer_res_ctl[idx] = ctl; |
2754 | } | 2755 | } |
2755 | 2756 | ||
@@ -2932,8 +2933,6 @@ static int snd_cmipci_free(struct cmipci *cm) | |||
2932 | /* reset mixer */ | 2933 | /* reset mixer */ |
2933 | snd_cmipci_mixer_write(cm, 0, 0); | 2934 | snd_cmipci_mixer_write(cm, 0, 0); |
2934 | 2935 | ||
2935 | synchronize_irq(cm->irq); | ||
2936 | |||
2937 | free_irq(cm->irq, cm); | 2936 | free_irq(cm->irq, cm); |
2938 | } | 2937 | } |
2939 | 2938 | ||