Browse Source

Revert "Sound: hda - Restore PCI configuration space with interrupts off"

This reverts commit 32e176c14d7a425b681ef003c9061001ddb7fc7b.

That commit caused a regression with suspend on Thinkpad SL300.

Reference: kernel bug#12711
	http://bugzilla.kernel.org/show_bug.cgi?id=12711

Tested-by:  Alexandre Rostovtsev <tetromino@gmail.com>
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai 16 years ago
parent
commit
d14a7e0bfc
1 changed files with 2 additions and 6 deletions
  1. 2 6
      sound/pci/hda/hda_intel.c

+ 2 - 6
sound/pci/hda/hda_intel.c

@@ -1947,16 +1947,13 @@ static int azx_suspend(struct pci_dev *pci, pm_message_t state)
 	return 0;
 	return 0;
 }
 }
 
 
-static int azx_resume_early(struct pci_dev *pci)
-{
-	return pci_restore_state(pci);
-}
-
 static int azx_resume(struct pci_dev *pci)
 static int azx_resume(struct pci_dev *pci)
 {
 {
 	struct snd_card *card = pci_get_drvdata(pci);
 	struct snd_card *card = pci_get_drvdata(pci);
 	struct azx *chip = card->private_data;
 	struct azx *chip = card->private_data;
 
 
+	pci_set_power_state(pci, PCI_D0);
+	pci_restore_state(pci);
 	if (pci_enable_device(pci) < 0) {
 	if (pci_enable_device(pci) < 0) {
 		printk(KERN_ERR "hda-intel: pci_enable_device failed, "
 		printk(KERN_ERR "hda-intel: pci_enable_device failed, "
 		       "disabling device\n");
 		       "disabling device\n");
@@ -2468,7 +2465,6 @@ static struct pci_driver driver = {
 	.remove = __devexit_p(azx_remove),
 	.remove = __devexit_p(azx_remove),
 #ifdef CONFIG_PM
 #ifdef CONFIG_PM
 	.suspend = azx_suspend,
 	.suspend = azx_suspend,
-	.resume_early = azx_resume_early,
 	.resume = azx_resume,
 	.resume = azx_resume,
 #endif
 #endif
 };
 };