amd64-agp suspend support
PATCH 1/1 amd64-agp suspend support
Hi,
This adds support for suspend/resume to the amd64-agp driver. Without it, X displays garbage after resume from swsusp.
Signed-off-by Michal Schmidt <[email protected]>
drivers/char/agp/amd64-agp.c +24 -0
@@ -600,6 +600,26 @@ static void __devexit agp_amd64_remove(sagp_put_bridge (bridge); } +#ifdef CONFIG_PM + +static int agp_amd64_suspend (struct pci_dev *pdev,pm_message_t state) +{ +pci_save_state (pdev); +pci_set_power_state (pdev,pci_choose_state (pdev, state)); + +return 0 ; +} + +static int agp_amd64_resume (struct pci_dev *pdev) +{ +pci_set_power_state (pdev,PCI_D0 ); +pci_restore_state (pdev); + +return amd_8151_configure (); +} + +#endif /* CONFIG_PM */ +static struct pci_device_id agp_amd64_pci_table[] = { { .class = (PCI_CLASS_BRIDGE_HOST <<8 ),
@@ -718,6 +738,10 @@ static struct pci_driver agp_amd64_pci_d .id_table = agp_amd64_pci_table, .probe = agp_amd64_probe, .remove = agp_amd64_remove, +#ifdef CONFIG_PM + .suspend = agp_amd64_suspend, + .resume = agp_amd64_resume, +#endif };