|
@@ -725,12 +725,11 @@ static struct pci_driver agp_amd64_pci_driver = {
|
|
|
int __init agp_amd64_init(void)
|
|
|
{
|
|
|
int err = 0;
|
|
|
- static int done = 0;
|
|
|
|
|
|
if (agp_off)
|
|
|
return -EINVAL;
|
|
|
|
|
|
- if (done++)
|
|
|
+ if (gart_iommu_aperture)
|
|
|
return agp_bridges_found ? 0 : -ENODEV;
|
|
|
|
|
|
err = pci_register_driver(&agp_amd64_pci_driver);
|
|
@@ -771,6 +770,8 @@ int __init agp_amd64_init(void)
|
|
|
|
|
|
static void __exit agp_amd64_cleanup(void)
|
|
|
{
|
|
|
+ if (gart_iommu_aperture)
|
|
|
+ return;
|
|
|
if (aperture_resource)
|
|
|
release_resource(aperture_resource);
|
|
|
pci_unregister_driver(&agp_amd64_pci_driver);
|