From: Dave Jones Date: Tue, 20 Jun 2006 04:42:04 +0000 (-0400) Subject: [AGPGART] Suspend/Resume improvements for ATI AGP X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=a4aec2622340e356e7dcd0e8fd05378dacb71c89;p=deliverable%2Flinux.git [AGPGART] Suspend/Resume improvements for ATI AGP Based on patches in the Ubuntu kernel. Signed-off-by: Ben Collins Signed-off-by: Dave Jones --- diff --git a/drivers/char/agp/ati-agp.c b/drivers/char/agp/ati-agp.c index 6db9b7f436aa..34bbd41f062a 100644 --- a/drivers/char/agp/ati-agp.c +++ b/drivers/char/agp/ati-agp.c @@ -245,18 +245,20 @@ static int ati_configure(void) #ifdef CONFIG_PM -static int agp_ati_resume(struct pci_dev *dev) +static int agp_ati_suspend(struct pci_dev *dev, pm_message_t state) { - pci_restore_state(dev); + pci_save_state(dev); + pci_set_power_state (pdev, 3); - return ati_configure(); + return 0; } -static int agp_ati_suspend(struct pci_dev *dev, pm_message_t state) +static int agp_ati_resume(struct pci_dev *dev) { - pci_save_state(dev); + pci_set_power_state (pdev, 0); + pci_restore_state(dev); - return 0; + return ati_configure(); } #endif @@ -545,8 +547,8 @@ static struct pci_driver agp_ati_pci_driver = { .probe = agp_ati_probe, .remove = agp_ati_remove, #ifdef CONFIG_PM - .resume = agp_ati_resume, .suspend = agp_ati_suspend, + .resume = agp_ati_resume, #endif };