aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/i915/intel_overlay.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
index 972d715245be..f1bf0b0c204c 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
@@ -286,16 +286,15 @@ static int intel_overlay_wait_flip(struct intel_overlay *overlay)
286 RING_LOCALS; 286 RING_LOCALS;
287 287
288 if (overlay->last_flip_req != 0) { 288 if (overlay->last_flip_req != 0) {
289 ret = i915_do_wait_request(dev, overlay->last_flip_req, 0); 289 ret = i915_do_wait_request(dev, overlay->last_flip_req, 1);
290 if (ret != 0) 290 if (ret == 0) {
291 return ret; 291 overlay->last_flip_req = 0;
292
293 overlay->last_flip_req = 0;
294 292
295 tmp = I915_READ(ISR); 293 tmp = I915_READ(ISR);
296 294
297 if (!(tmp & I915_OVERLAY_PLANE_FLIP_PENDING_INTERRUPT)) 295 if (!(tmp & I915_OVERLAY_PLANE_FLIP_PENDING_INTERRUPT))
298 return 0; 296 return 0;
297 }
299 } 298 }
300 299
301 /* synchronous slowpath */ 300 /* synchronous slowpath */
@@ -439,8 +438,6 @@ int intel_overlay_recover_from_interrupt(struct intel_overlay *overlay,
439 return ret; 438 return ret;
440 439
441 case SWITCH_OFF_STAGE_2: 440 case SWITCH_OFF_STAGE_2:
442 printk("switch off 2\n");
443
444 BUG_ON(!overlay->vid_bo); 441 BUG_ON(!overlay->vid_bo);
445 obj = overlay->vid_bo->obj; 442 obj = overlay->vid_bo->obj;
446 443