diff options
author | Len Brown <len.brown@intel.com> | 2005-07-29 23:31:17 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2005-07-29 23:31:17 -0400 |
commit | d6ac1a7910d22626bc77e73db091e00b810715f4 (patch) | |
tree | c8f235b7287056a03bc2bc032902469a331b5e56 /sound | |
parent | 577a4f8102d54b504cb22eb021b89e957e8df18f (diff) | |
parent | 87bec66b9691522414862dd8d41e430b063735ef (diff) |
/home/lenb/src/to-linus branch 'acpi-2.6.12'
Diffstat (limited to 'sound')
-rw-r--r-- | sound/pci/intel8x0.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sound/pci/intel8x0.c b/sound/pci/intel8x0.c index cc16f95f9ce..28ac005c21b 100644 --- a/sound/pci/intel8x0.c +++ b/sound/pci/intel8x0.c @@ -2373,6 +2373,8 @@ static int intel8x0_suspend(snd_card_t *card, pm_message_t state) for (i = 0; i < 3; i++) if (chip->ac97[i]) snd_ac97_suspend(chip->ac97[i]); + if (chip->irq >= 0) + free_irq(chip->irq, (void *)chip); pci_disable_device(chip->pci); return 0; } @@ -2384,7 +2386,9 @@ static int intel8x0_resume(snd_card_t *card) pci_enable_device(chip->pci); pci_set_master(chip->pci); - snd_intel8x0_chip_init(chip, 0); + request_irq(chip->irq, snd_intel8x0_interrupt, SA_INTERRUPT|SA_SHIRQ, card->shortname, (void *)chip); + synchronize_irq(chip->irq); + snd_intel8x0_chip_init(chip, 1); /* refill nocache */ if (chip->fix_nocache) |