memset(&ac97, 0, sizeof(ac97));
        ac97.private_data = chip;
+       ac97.scaps = AC97_SCAP_NO_SPDIF;
        return snd_ac97_mixer(pbus, &ac97, &chip->ac97);
 }
 
 
                return -ENOMEM;
        if ((err = snd_ctl_add(card, kctl)))
                return err;
-       if ((kctl = ctl_find(card, SNDRV_CTL_NAME_IEC958("",PLAYBACK,DEFAULT))) != NULL) {
-               /* already defined by ac97, remove it */
-               /* FIXME: or do we need both controls? */
-               remove_ctl(card, SNDRV_CTL_NAME_IEC958("",PLAYBACK,DEFAULT));
-       }
        if ((kctl = snd_ctl_new1(&snd_ca0106_spdif_control, emu)) == NULL)
                return -ENOMEM;
        if ((err = snd_ctl_add(card, kctl)))