[ALSA] cmipci: initialize 0x90 registers
authorClemens Ladisch <clemens@ladisch.de>
Mon, 17 Sep 2007 07:37:19 +0000 (09:37 +0200)
committerJaroslav Kysela <perex@perex.cz>
Tue, 16 Oct 2007 14:50:30 +0000 (16:50 +0200)
Initialize the registers at 0x90 and 0x91 with some undocumented values.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
sound/pci/cmipci.c

index 8c5c843099c64add4c82b72f5ea052f2d548b490..c33c1c77869317149689b75c46595d5f35ddb19d 100644 (file)
@@ -2986,6 +2986,10 @@ static int __devinit snd_cmipci_create(struct snd_card *card, struct pci_dev *pc
 #else
        snd_cmipci_clear_bit(cm, CM_REG_MISC_CTRL, CM_XCHGDAC);
 #endif
+       if (cm->chip_version) {
+               snd_cmipci_write_b(cm, CM_REG_EXT_MISC, 0x20); /* magic */
+               snd_cmipci_write_b(cm, CM_REG_EXT_MISC + 1, 0x09); /* more magic */
+       }
        /* Set Bus Master Request */
        snd_cmipci_set_bit(cm, CM_REG_FUNCTRL1, CM_BREQ);