login
Header Space

 
 

[PATCH] sky2: fix MSI related resume breakage

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Linus Torvalds <torvalds@...>
Cc: Stephen Hemminger <shemminger@...>, Linux Kernel Mailing List <linux-kernel@...>, Jeff Garzik <jeff@...>
Date: Monday, January 29, 2007 - 7:42 pm

commmit 44ade178249fe53d055fd92113eaa271e06acddd breaks sane
MSI/ACPI/BIOS combinations. It's impossible to keep broken and sane
MSI/ACPI/BIOSes happy at the same time.

Revert the patch and disable MSI for sky2 when CONFIG_PM is enabled.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index a2e804d..420fef7 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -91,7 +91,11 @@ static int copybreak __read_mostly = 128;
 module_param(copybreak, int, 0);
 MODULE_PARM_DESC(copybreak, "Receive copy threshold");
 
+#ifdef CONFIG_PM
+static int disable_msi = 1;
+#else
 static int disable_msi = 0;
+#endif
 module_param(disable_msi, int, 0);
 MODULE_PARM_DESC(disable_msi, "Disable Message Signaled Interrupt (MSI)");
 
@@ -3601,6 +3605,7 @@ static int sky2_suspend(struct pci_dev *pdev, pm_message_t state)
 	sky2_write32(hw, B0_IMSK, 0);
 	pci_save_state(pdev);
 	sky2_set_power_state(hw, pstate);
+
 	return 0;
 }
 
@@ -3640,28 +3645,6 @@ out:
 	return err;
 }
 
-/* BIOS resume runs after device (it's a bug in PM)
- * as a temporary workaround on suspend/resume leave MSI disabled
- */
-static int sky2_suspend_late(struct pci_dev *pdev, pm_message_t state)
-{
-	struct sky2_hw *hw = pci_get_drvdata(pdev);
-
-	free_irq(pdev->irq, hw);
-	if (hw->msi) {
-		pci_disable_msi(pdev);
-		hw->msi = 0;
-	}
-	return 0;
-}
-
-static int sky2_resume_early(struct pci_dev *pdev)
-{
-	struct sky2_hw *hw = pci_get_drvdata(pdev);
-	struct net_device *dev = hw->dev[0];
-
-	return request_irq(pdev->irq, sky2_intr, IRQF_SHARED, dev->name, hw);
-}
 #endif
 
 static struct pci_driver sky2_driver = {
@@ -3672,8 +3655,6 @@ static struct pci_driver sky2_driver = {
 #ifdef CONFIG_PM
 	.suspend = sky2_suspend,
 	.resume = sky2_resume,
-	.suspend_late = sky2_suspend_late,
-	.resume_early = sky2_resume_early,
 #endif
 };
 


-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Linux 2.6.20-rc6, Linus Torvalds, (Wed Jan 24, 10:58 pm)
Re: Linux 2.6.20-rc6 - suspend / resume ata_piix, Thomas Gleixner, (Sat Jan 27, 6:11 pm)
Re: Linux 2.6.20-rc6 - suspend / resume ata_piix, Jeff Garzik, (Sat Jan 27, 6:40 pm)
Re: Linux 2.6.20-rc6 - suspend / resume ata_piix, Thomas Gleixner, (Sat Jan 27, 6:44 pm)
Re: Linux 2.6.20-rc6 - suspend / resume ata_piix, Thomas Gleixner, (Sun Jan 28, 6:05 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Thomas Gleixner, (Sat Jan 27, 4:55 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Stephen Hemminger, (Mon Jan 29, 3:31 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Thomas Gleixner, (Mon Jan 29, 4:10 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Stephen Hemminger, (Mon Jan 29, 5:38 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Thomas Gleixner, (Mon Jan 29, 6:23 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Frédéric, (Mon Jan 29, 6:38 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Thomas Gleixner, (Mon Jan 29, 6:45 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Frédéric, (Mon Jan 29, 6:50 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Thomas Gleixner, (Mon Jan 29, 6:57 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Frédéric, (Mon Jan 29, 7:26 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Thomas Gleixner, (Mon Jan 29, 7:37 pm)
[PATCH] block MSI on Sony, Stephen Hemminger, (Mon Jan 29, 7:50 pm)
Re: [PATCH] block MSI on Sony, Thomas Gleixner, (Mon Jan 29, 8:22 pm)
Re: [PATCH] block MSI on Sony, Thomas Gleixner, (Mon Jan 29, 8:26 pm)
Re: [PATCH] block MSI on Sony, Stephen Hemminger, (Mon Jan 29, 8:21 pm)
Re: [PATCH] block MSI on Sony, Thomas Gleixner, (Mon Jan 29, 8:31 pm)
Re: [PATCH] block MSI on Sony, Stephen Hemminger, (Mon Jan 29, 8:31 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Linus Torvalds, (Mon Jan 29, 6:37 pm)
[PATCH] sky2: fix MSI related resume breakage, Thomas Gleixner, (Mon Jan 29, 7:42 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Stephen Hemminger, (Mon Jan 29, 6:40 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Linus Torvalds, (Mon Jan 29, 7:04 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Stephen Hemminger, (Mon Jan 29, 7:45 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Linus Torvalds, (Mon Jan 29, 8:12 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Len Brown, (Tue Jan 30, 4:57 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Pavel Machek, (Thu Feb 1, 8:49 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Rafael J. Wysocki, (Tue Jan 30, 12:01 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Nigel Cunningham, (Tue Jan 30, 5:28 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Stephen Hemminger, (Mon Jan 29, 8:16 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Linus Torvalds, (Mon Jan 29, 8:25 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Ingo Molnar, (Tue Jan 30, 2:54 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Jeff Garzik, (Tue Jan 30, 3:39 am)
[LIBATA BUG] sr.c: TEST_UNIT_READY error, Conke Hu, (Thu Feb 1, 2:15 am)
Re: [LIBATA BUG] sr.c: TEST_UNIT_READY error, Jeff Garzik, (Wed Feb 7, 8:40 am)
Re: [LIBATA BUG] sr.c: TEST_UNIT_READY error, Conke Hu, (Fri Feb 2, 1:48 am)
Re: [LIBATA BUG] sr.c: TEST_UNIT_READY error, Conke Hu, (Tue Feb 13, 3:30 am)
Re: [LIBATA BUG] sr.c: TEST_UNIT_READY error, Conke Hu, (Thu Feb 15, 2:30 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Ingo Molnar, (Tue Jan 30, 4:03 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Ingo Molnar, (Tue Jan 30, 3:53 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Jeff Garzik, (Tue Jan 30, 4:02 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Ingo Molnar, (Tue Jan 30, 4:08 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Jeff Garzik, (Wed Jan 31, 11:27 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Ingo Molnar, (Wed Jan 31, 1:38 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Jeff Garzik, (Wed Jan 31, 1:52 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Thomas Gleixner, (Wed Jan 31, 4:13 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Ingo Molnar, (Tue Jan 30, 4:13 am)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Stephen Hemminger, (Mon Jan 29, 8:26 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Stephen Hemminger, (Mon Jan 29, 6:23 pm)
Re: Linux 2.6.20-rc6 - sky2 resume breakage, Thomas Gleixner, (Mon Jan 29, 6:31 pm)
Re: Linux 2.6.20-rc6 - supend lockdep warning, Thomas Gleixner, (Sat Jan 27, 4:47 pm)
2.6.20-rc6: known regressions with patches (v2), Adrian Bunk, (Sat Jan 27, 1:44 pm)
2.6.20-rc6: known unfixed regressions (v2) (part 2), Adrian Bunk, (Sat Jan 27, 1:42 pm)
Re: 2.6.20-rc6: known unfixed regressions (v2) (part 2), Mike Galbraith, (Mon Jan 29, 2:26 am)
Re: 2.6.20-rc6: known unfixed regressions (v2) (part 2), Andrew Morton, (Mon Jan 29, 2:48 am)
Re: 2.6.20-rc6: known unfixed regressions (v2) (part 2), Mike Galbraith, (Mon Jan 29, 3:08 am)
Re: 2.6.20-rc6: known unfixed regressions (v2) (part 2), Linus Torvalds, (Mon Jan 29, 3:13 am)
2.6.20-rc6: known unfixed regressions (v2) (part 1), Adrian Bunk, (Sat Jan 27, 1:32 pm)
Re: Linux 2.6.20-rc6, Sunil Naidu, (Thu Jan 25, 6:09 am)
Re: Linux 2.6.20-rc6, Michal Piotrowski, (Thu Jan 25, 5:05 pm)
Re: Linux 2.6.20-rc6, David Miller, (Thu Jan 25, 5:12 pm)
RE: Linux 2.6.20-rc6, Venkat Yekkirala, (Fri Jan 26, 12:52 pm)
Re: Linux 2.6.20-rc6 - build failure, Eyal Lebedinsky, (Thu Jan 25, 7:10 am)
Re: Linux 2.6.20-rc6 - build failure, Eyal Lebedinsky, (Thu Jan 25, 10:22 pm)
[2.6 patch] fix OCFS2 compile error, Adrian Bunk, (Fri Jan 26, 2:49 pm)
Re: [2.6 patch] fix OCFS2 compile error, Mark Fasheh, (Fri Jan 26, 3:47 pm)
Re: [2.6 patch] fix OCFS2 compile error, Adrian Bunk, (Fri Jan 26, 3:53 pm)
Re: Linux 2.6.20-rc6 - build failure, Mark Fasheh, (Fri Jan 26, 2:46 pm)
2.6.20-rc6: known regressions with patches, Adrian Bunk, (Fri Jan 26, 2:18 pm)
Re: 2.6.20-rc6: known regressions with patches, Ingo Molnar, (Mon Jan 29, 4:45 am)
Re: 2.6.20-rc6: known regressions with patches, Dave Jones, (Mon Jan 29, 8:58 am)
2.6.20-rc6: known unfixed regressions (part 2), Adrian Bunk, (Fri Jan 26, 2:11 pm)
Re: 2.6.20-rc6: known unfixed regressions (part 2), Michal Piotrowski, (Fri Jan 26, 3:04 pm)
RE: 2.6.20-rc6: known unfixed regressions (part 2), Venkat Yekkirala, (Fri Jan 26, 3:08 pm)
Re: 2.6.20-rc6: known unfixed regressions (part 2), Adrian Bunk, (Sat Jan 27, 1:28 pm)
Re: 2.6.20-rc6: known unfixed regressions (part 2), Linus Torvalds, (Sat Jan 27, 1:58 pm)
Re: 2.6.20-rc6: known unfixed regressions (part 2), Adrian Bunk, (Sat Jan 27, 1:39 pm)
2.6.20-rc6: known unfixed regressions (part 1), Adrian Bunk, (Fri Jan 26, 2:10 pm)
Re: Linux 2.6.20-rc6, Arkadiusz Patyk, (Thu Jan 25, 1:50 pm)
speck-geostationary