summaryrefslogtreecommitdiffstats
path: root/drivers/char/agp/ati-agp.c
diff options
context:
space:
mode:
authorakpm@osdl.org <akpm@osdl.org>2006-01-04 08:00:59 +0100
committerDave Jones <davej@redhat.com>2006-01-17 05:53:45 +0100
commit5dda4986752b531d89d49c218682e42c63ef1d61 (patch)
tree2138623c0d00170cda9a46aa1122831dd7293ae0 /drivers/char/agp/ati-agp.c
parent[AGPGART] Suspend/Resume support for AMD64 GART. (diff)
downloadlinux-5dda4986752b531d89d49c218682e42c63ef1d61.tar.xz
linux-5dda4986752b531d89d49c218682e42c63ef1d61.zip
[AGPGART] Suspend/Resume support for ATI GART
Add suspend/resume support for the ati-agp module Signed-off-by: Jaco Kroon <jaco@kroon.co.za> Acked-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Dave Jones <davej@redhat.com>
Diffstat (limited to 'drivers/char/agp/ati-agp.c')
-rw-r--r--drivers/char/agp/ati-agp.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/char/agp/ati-agp.c b/drivers/char/agp/ati-agp.c
index 53372a83b675..5b74c36c116c 100644
--- a/drivers/char/agp/ati-agp.c
+++ b/drivers/char/agp/ati-agp.c
@@ -244,6 +244,22 @@ static int ati_configure(void)
}
+#ifdef CONFIG_PM
+static int agp_ati_resume(struct pci_dev *dev)
+{
+ pci_restore_state(dev);
+
+ return ati_configure();
+}
+
+static int agp_ati_suspend(struct pci_dev *dev, pm_message_t state)
+{
+ pci_save_state(dev);
+
+ return 0;
+}
+#endif
+
/*
*Since we don't need contigious memory we just try
* to get the gatt table once
@@ -525,6 +541,10 @@ static struct pci_driver agp_ati_pci_driver = {
.id_table = agp_ati_pci_table,
.probe = agp_ati_probe,
.remove = agp_ati_remove,
+#ifdef CONFIG_PM
+ .resume = agp_ati_resume,
+ .suspend = agp_ati_suspend,
+#endif
};
static int __init agp_ati_init(void)