diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2011-04-14 10:41:17 +0200 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2011-06-10 06:51:19 +0200 |
commit | 2da3b9b940e2a18147422c54ed8b29d01e1ade88 (patch) | |
tree | afffe23550ffcc446e70559c4f75cd1f308cca33 /drivers/gpu/drm/i915/intel_overlay.c | |
parent | drm/i915: Mark the cursor and the overlay as being part of the display planes (diff) | |
download | linux-2da3b9b940e2a18147422c54ed8b29d01e1ade88.tar.xz linux-2da3b9b940e2a18147422c54ed8b29d01e1ade88.zip |
drm/i915: Combine pinning with setting to the display plane
We need to perform a few operations in order to move the object into the
display plane (where it can be accessed coherently by the display
engine) that are important for future safety to forbid whilst pinned. As a
result, we want to need to perform some of the operations before pinning,
but some are required once we have been bound into the GTT. So combine
the pinning performed by all the callers with set_to_display_plane(), so
this complication is contained within the single function.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_overlay.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_overlay.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c index e0903c5f0ca2..fcf6fcb0b482 100644 --- a/drivers/gpu/drm/i915/intel_overlay.c +++ b/drivers/gpu/drm/i915/intel_overlay.c @@ -773,14 +773,10 @@ static int intel_overlay_do_put_image(struct intel_overlay *overlay, if (ret != 0) return ret; - ret = i915_gem_object_pin(new_bo, PAGE_SIZE, true); + ret = i915_gem_object_pin_to_display_plane(new_bo, 0, NULL); if (ret != 0) return ret; - ret = i915_gem_object_set_to_display_plane(new_bo, NULL); - if (ret != 0) - goto out_unpin; - ret = i915_gem_object_put_fence(new_bo); if (ret) goto out_unpin; |