vserver 1.9.5.x5
[linux-2.6.git] / drivers / char / agp / via-agp.c
index bcaea8e..b15dcd9 100644 (file)
@@ -442,7 +442,7 @@ static void __devexit agp_via_remove(struct pci_dev *pdev)
 
 static int agp_via_suspend(struct pci_dev *pdev, u32 state)
 {
-       pci_save_state (pdev, pdev->saved_config_space);
+       pci_save_state (pdev);
        pci_set_power_state (pdev, 3);
 
        return 0;
@@ -453,7 +453,7 @@ static int agp_via_resume(struct pci_dev *pdev)
        struct agp_bridge_data *bridge = pci_get_drvdata(pdev);
 
        pci_set_power_state (pdev, 0);
-       pci_restore_state(pdev, pdev->saved_config_space);
+       pci_restore_state(pdev);
 
        if (bridge->driver == &via_agp3_driver)
                return via_configure_agp3();
@@ -523,6 +523,8 @@ static struct pci_driver agp_via_pci_driver = {
 
 static int __init agp_via_init(void)
 {
+       if (agp_off)
+               return -EINVAL;
        return pci_module_init(&agp_via_pci_driver);
 }