Commit d838962f authored by Ville Syrjälä's avatar Ville Syrjälä

drm/i915/fbc: Don't clear busy_bits for origin==GTT

The hardware host tracking won't nuke the entire cfb (unless the
entire fb is written through the gtt) so don't clear the busy_bits
for gtt tracking.

Not that it really matters anymore since we've lost ORIGIN_GTT usage
everywhere.
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200429101034.8208-7-ville.syrjala@linux.intel.comReviewed-by: default avatarJosé Roberto de Souza <jose.souza@intel.com>
parent 5331889b
...@@ -1078,11 +1078,19 @@ void intel_fbc_flush(struct drm_i915_private *dev_priv, ...@@ -1078,11 +1078,19 @@ void intel_fbc_flush(struct drm_i915_private *dev_priv,
if (!HAS_FBC(dev_priv)) if (!HAS_FBC(dev_priv))
return; return;
/*
* GTT tracking does not nuke the entire cfb
* so don't clear busy_bits set for some other
* reason.
*/
if (origin == ORIGIN_GTT)
return;
mutex_lock(&fbc->lock); mutex_lock(&fbc->lock);
fbc->busy_bits &= ~frontbuffer_bits; fbc->busy_bits &= ~frontbuffer_bits;
if (origin == ORIGIN_GTT || origin == ORIGIN_FLIP) if (origin == ORIGIN_FLIP)
goto out; goto out;
if (!fbc->busy_bits && fbc->crtc && if (!fbc->busy_bits && fbc->crtc &&
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment