summaryrefslogtreecommitdiffstats
path: root/drivers/char/agp
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2010-04-20 16:34:20 +1000
committerDave Airlie <airlied@redhat.com>2010-04-20 16:38:18 +1000
commit10fd883ce384706f88554a0b08cc4d63345e7d8b (patch)
treecdd1b5415a8a1ad471da8ff83139b96326711f54 /drivers/char/agp
parentd4b74bf07873da2e94219a7b67a334fc1c3ce649 (diff)
agp/intel: put back check that we have a driver for the bridge.
On my 945 laptop + radeon GPU, I was getting an oops on boot without this check which seems to have gotten dropped in the rework. Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/char/agp')
-rw-r--r--drivers/char/agp/intel-agp.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c
index 07a9aad28c1..034644eeedf 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;