aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/intel8x0.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2005-07-30 13:15:57 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2005-07-30 13:15:57 -0400
commit6d1d07e41a1de478a0da3cc14b4a8054ef09931c (patch)
treedb7802272fd8aff185a6ecc29ea78c1e3005783b /sound/pci/intel8x0.c
parentd7a465b4740806e4ee34061ad455595b2fa9fad5 (diff)
parentadbedd34244e2b054557002817f979a9b004a405 (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/lenb/to-linus
Diffstat (limited to 'sound/pci/intel8x0.c')
-rw-r--r--sound/pci/intel8x0.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sound/pci/intel8x0.c b/sound/pci/intel8x0.c
index 7c806bd9cc90..d7af3e474432 100644
--- a/sound/pci/intel8x0.c
+++ b/sound/pci/intel8x0.c
@@ -2376,6 +2376,9 @@ static int intel8x0_suspend(snd_card_t *card, pm_message_t state)
2376 snd_ac97_suspend(chip->ac97[i]); 2376 snd_ac97_suspend(chip->ac97[i]);
2377 if (chip->device_type == DEVICE_INTEL_ICH4) 2377 if (chip->device_type == DEVICE_INTEL_ICH4)
2378 chip->sdm_saved = igetbyte(chip, ICHREG(SDM)); 2378 chip->sdm_saved = igetbyte(chip, ICHREG(SDM));
2379
2380 if (chip->irq >= 0)
2381 free_irq(chip->irq, (void *)chip);
2379 pci_disable_device(chip->pci); 2382 pci_disable_device(chip->pci);
2380 return 0; 2383 return 0;
2381} 2384}
@@ -2387,7 +2390,9 @@ static int intel8x0_resume(snd_card_t *card)
2387 2390
2388 pci_enable_device(chip->pci); 2391 pci_enable_device(chip->pci);
2389 pci_set_master(chip->pci); 2392 pci_set_master(chip->pci);
2390 snd_intel8x0_chip_init(chip, 0); 2393 request_irq(chip->irq, snd_intel8x0_interrupt, SA_INTERRUPT|SA_SHIRQ, card->shortname, (void *)chip);
2394 synchronize_irq(chip->irq);
2395 snd_intel8x0_chip_init(chip, 1);
2391 2396
2392 /* re-initialize mixer stuff */ 2397 /* re-initialize mixer stuff */
2393 if (chip->device_type == DEVICE_INTEL_ICH4) { 2398 if (chip->device_type == DEVICE_INTEL_ICH4) {