diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c index 07a9aad28c1168010b931f94a9b2208dfaa486ec..034644eeedf25f9e5b17043782512b0cdbe7ccf7 100644 --- a/drivers/char/agp/intel-agp.c +++ b/drivers/char/agp/intel-agp.c @@ -885,6 +885,14 @@ static int __devinit agp_intel_probe(struct pci_dev *pdev, return -ENODEV; } + if (!bridge->driver) { + if (cap_ptr) + dev_warn(&pdev->dev, "can't find bridge device (chip_id: %04x)\n", + intel_agp_chipsets[i].gmch_chip_id); + agp_put_bridge(bridge); + return -ENODEV; + } + bridge->dev = pdev; bridge->dev_private_data = NULL;