Skip to content

Commit

Permalink
[ALSA] intel8x0m - Free irq in suspend
Browse files Browse the repository at this point in the history
Free the irq handler in suspend and reacquire in resume as well as
intel8x0 audio driver does.  Some devices may change the irq line
dynamically during suspend/resume.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
  • Loading branch information
Takashi Iwai authored and Jaroslav Kysela committed Sep 23, 2006
1 parent 8b0c414 commit f0063c4
Showing 1 changed file with 5 additions and 0 deletions.
5 changes: 5 additions & 0 deletions sound/pci/intel8x0m.c
Original file line number Diff line number Diff line change
Expand Up @@ -1045,6 +1045,8 @@ static int intel8x0m_suspend(struct pci_dev *pci, pm_message_t state)
for (i = 0; i < chip->pcm_devs; i++)
snd_pcm_suspend_all(chip->pcm[i]);
snd_ac97_suspend(chip->ac97);
if (chip->irq >= 0)
free_irq(chip->irq, chip);
pci_disable_device(pci);
pci_save_state(pci);
return 0;
Expand All @@ -1058,6 +1060,9 @@ static int intel8x0m_resume(struct pci_dev *pci)
pci_restore_state(pci);
pci_enable_device(pci);
pci_set_master(pci);
request_irq(pci->irq, snd_intel8x0_interrupt, IRQF_DISABLED|IRQF_SHARED,
card->shortname, chip);
chip->irq = pci->irq;
snd_intel8x0_chip_init(chip, 0);
snd_ac97_resume(chip->ac97);

Expand Down

0 comments on commit f0063c4

Please sign in to comment.