diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-09 07:23:17 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-09 07:23:17 -0800 |
commit | 45b8da90f2e1af7e1a233f03791c78ed0f831fca (patch) | |
tree | 6c0ca1399151674ff8fd5ef0b5e58bed9ed8c96a /drivers/gpu/drm/radeon/radeon_fb.c | |
parent | e304dfdb030bab29888151021843bd9e1743a535 (diff) | |
parent | 38aa4a568ba4c3ccba83e862a01e3e60e3b811ee (diff) | |
download | linux-45b8da90f2e1af7e1a233f03791c78ed0f831fca.tar.bz2 |
Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
Pull radeon drm stuff from Dave Airlie:
"Just some radeon fixes, one is for an oops where we run out of ioremap
space on some big hardware systems in 32-bit mode, stuff doesn't work
properly but at least the machine will boot.
One regression fix, and two bugs, one hw, one blit code."
* 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
drm/radeon/kms: fix hdmi duallink checks
drm/radeon/kms: set SX_MISC in the r6xx blit code (v2)
drm/radeon: deal with errors from framebuffer init path.
drm/radeon: fix a semaphore deadlock on pre cayman asics
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_fb.c')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_fb.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_fb.c b/drivers/gpu/drm/radeon/radeon_fb.c index cf2bf35b56b8..195471cf65d3 100644 --- a/drivers/gpu/drm/radeon/radeon_fb.c +++ b/drivers/gpu/drm/radeon/radeon_fb.c @@ -209,6 +209,11 @@ static int radeonfb_create(struct radeon_fbdev *rfbdev, sizes->surface_depth); ret = radeonfb_create_pinned_object(rfbdev, &mode_cmd, &gobj); + if (ret) { + DRM_ERROR("failed to create fbcon object %d\n", ret); + return ret; + } + rbo = gem_to_radeon_bo(gobj); /* okay we have an object now allocate the framebuffer */ @@ -220,7 +225,11 @@ static int radeonfb_create(struct radeon_fbdev *rfbdev, info->par = rfbdev; - radeon_framebuffer_init(rdev->ddev, &rfbdev->rfb, &mode_cmd, gobj); + ret = radeon_framebuffer_init(rdev->ddev, &rfbdev->rfb, &mode_cmd, gobj); + if (ret) { + DRM_ERROR("failed to initalise framebuffer %d\n", ret); + goto out_unref; + } fb = &rfbdev->rfb.base; |