summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/radeon/r300.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-02-22 23:58:30 +0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-02-22 23:58:30 +0400
commite2d4370b78f52d78e21695abd610a7044268763c (patch)
treee11a05237a7c71c7c8caa9e9ceb0708bfa39ea49 /drivers/gpu/drm/radeon/r300.c
parent71c01b9d5b00e5887f6a81a5303c65841e096d61 (diff)
parent3ac0eb6d62fde0a60a6c5c61e562af1db8fbf712 (diff)
downloadlinux-e2d4370b78f52d78e21695abd610a7044268763c.tar.xz
Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
Intel, radeon, exynos fixes. Intel: fixes a few Ivybridge hangs, along with fixing RC6 on SNB (still not on, but at least allows for distros to patch it on easily). radeon: oops reading some files in debugfs that weren't meant to appear, a fix that touches a lot of files, so looks worse than it is, it fixes an oops if a GPU reset fails and userspace keeps submitting more data, along with a minor BIOS fix for newer boards. exynos: a group of fixes for exynos, they've sent me a few more but these were all I got through, and its no hw vanilla kernel users see a lot off yet. * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: drm/radeon/kms/atom: dpms bios scratch reg updates drm/radeon/kms: properly set accel working flag and bailout when false drm/radeon: Only create additional ring debugfs files on Cayman or newer. drm/exynos: added postclose to release resource. drm/exynos: removed exynos_drm_fbdev_recreate function. drm/exynos: fixed page flip issue. drm/exynos: added possible_clones setup function. drm/exynos: removed pageflip_event_list init code when closed. drm/exynos: changed priority of mixer layers. drm/exynos: Fix typo in exynos_mixer.c drm/i915: do not enable RC6p on Sandy Bridge drm/i915: gen7: Disable the RHWO optimization as it can cause GPU hangs. drm/i915: gen7: work around a system hang on IVB drm/i915: gen7: Implement an L3 caching workaround. drm/i915: gen7: implement rczunit workaround
Diffstat (limited to 'drivers/gpu/drm/radeon/r300.c')
-rw-r--r--drivers/gpu/drm/radeon/r300.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c
index 3fc0d29a5f39..6829638cca40 100644
--- a/drivers/gpu/drm/radeon/r300.c
+++ b/drivers/gpu/drm/radeon/r300.c
@@ -1431,6 +1431,8 @@ static int r300_startup(struct radeon_device *rdev)
int r300_resume(struct radeon_device *rdev)
{
+ int r;
+
/* Make sur GART are not working */
if (rdev->flags & RADEON_IS_PCIE)
rv370_pcie_gart_disable(rdev);
@@ -1452,7 +1454,11 @@ int r300_resume(struct radeon_device *rdev)
radeon_surface_init(rdev);
rdev->accel_working = true;
- return r300_startup(rdev);
+ r = r300_startup(rdev);
+ if (r) {
+ rdev->accel_working = false;
+ }
+ return r;
}
int r300_suspend(struct radeon_device *rdev)