summaryrefslogtreecommitdiff
path: root/drivers/gpu
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2010-06-21 03:31:38 (GMT)
committerDave Airlie <airlied@redhat.com>2010-07-01 01:59:30 (GMT)
commit8b5d8dec7c85b6f1a4ae9c57500f1378d79556bc (patch)
tree96d21e708b964d0cc7f45c6c1d328265f487cceb /drivers/gpu
parentf96b35cd6f499d1219e5c1aac95f818b3e566e67 (diff)
downloadlinux-8b5d8dec7c85b6f1a4ae9c57500f1378d79556bc.tar.xz
drm/radeon/kms: don't read attempt to read bios from VRAM on unposted GPU.
Since the VGA switcheroo, we'd attempt to read the BIOS from VRAM on startup but on some unposted cards this can cause hangs/crashes. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=28592 (further problem pointed out by agd5f on IGP systems) Reported-by: Reilithion on #radeon Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/radeon/radeon_bios.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_bios.c b/drivers/gpu/drm/radeon/radeon_bios.c
index fbba938..2c92137 100644
--- a/drivers/gpu/drm/radeon/radeon_bios.c
+++ b/drivers/gpu/drm/radeon/radeon_bios.c
@@ -48,6 +48,10 @@ static bool igp_read_bios_from_vram(struct radeon_device *rdev)
resource_size_t vram_base;
resource_size_t size = 256 * 1024; /* ??? */
+ if (!(rdev->flags & RADEON_IS_IGP))
+ if (!radeon_card_posted(rdev))
+ return false;
+
rdev->bios = NULL;
vram_base = drm_get_resource_start(rdev->ddev, 0);
bios = ioremap(vram_base, size);