summaryrefslogtreecommitdiffstats
path: root/sound/pci/cmipci.c
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2007-09-17 09:36:49 +0200
committerJaroslav Kysela <perex@perex.cz>2007-10-16 16:50:30 +0200
commit3042ef75203947920adc0ab7ae25bc62a1fec978 (patch)
tree289f917ba3d4ea1753b7e277853d1bd88ebfadbe /sound/pci/cmipci.c
parent54d030cc400ef5565a90e71288c23c0a18299dba (diff)
downloadlinux-3042ef75203947920adc0ab7ae25bc62a1fec978.tar.gz
linux-3042ef75203947920adc0ab7ae25bc62a1fec978.tar.bz2
linux-3042ef75203947920adc0ab7ae25bc62a1fec978.zip
[ALSA] cmipci: reset the chip when initializing
When the chip is initialized, reset it. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound/pci/cmipci.c')
-rw-r--r--sound/pci/cmipci.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/pci/cmipci.c b/sound/pci/cmipci.c
index 12f33718e6d1..8c5c843099c6 100644
--- a/sound/pci/cmipci.c
+++ b/sound/pci/cmipci.c
@@ -2971,6 +2971,8 @@ static int __devinit snd_cmipci_create(struct snd_card *card, struct pci_dev *pc
#endif
/* initialize codec registers */
+ snd_cmipci_set_bit(cm, CM_REG_MISC_CTRL, CM_RESET);
+ snd_cmipci_clear_bit(cm, CM_REG_MISC_CTRL, CM_RESET);
snd_cmipci_write(cm, CM_REG_INT_HLDCLR, 0); /* disable ints */
snd_cmipci_ch_reset(cm, CM_CH_PLAY);
snd_cmipci_ch_reset(cm, CM_CH_CAPT);