aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_overlay.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/i915/intel_overlay.c')
-rw-r--r--drivers/gpu/drm/i915/intel_overlay.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
index 4972b5ca1e8f..fef4dd61dcfd 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
@@ -1386,6 +1386,12 @@ void intel_setup_overlay(struct drm_device *dev)
1386 goto out_free_bo; 1386 goto out_free_bo;
1387 } 1387 }
1388 overlay->flip_addr = overlay->reg_bo->gtt_offset; 1388 overlay->flip_addr = overlay->reg_bo->gtt_offset;
1389
1390 ret = i915_gem_object_set_to_gtt_domain(reg_bo, true);
1391 if (ret) {
1392 DRM_ERROR("failed to move overlay register bo into the GTT\n");
1393 goto out_unpin_bo;
1394 }
1389 } else { 1395 } else {
1390 ret = i915_gem_attach_phys_object(dev, reg_bo, 1396 ret = i915_gem_attach_phys_object(dev, reg_bo,
1391 I915_GEM_PHYS_OVERLAY_REGS, 1397 I915_GEM_PHYS_OVERLAY_REGS,
@@ -1418,6 +1424,8 @@ void intel_setup_overlay(struct drm_device *dev)
1418 DRM_INFO("initialized overlay support\n"); 1424 DRM_INFO("initialized overlay support\n");
1419 return; 1425 return;
1420 1426
1427out_unpin_bo:
1428 i915_gem_object_unpin(reg_bo);
1421out_free_bo: 1429out_free_bo:
1422 drm_gem_object_unreference(reg_bo); 1430 drm_gem_object_unreference(reg_bo);
1423out_free: 1431out_free: