Lines Matching refs:i915
79 static void frontbuffer_flush(struct drm_i915_private *i915, in frontbuffer_flush() argument
84 spin_lock(&i915->display.fb_tracking.lock); in frontbuffer_flush()
85 frontbuffer_bits &= ~i915->display.fb_tracking.busy_bits; in frontbuffer_flush()
86 spin_unlock(&i915->display.fb_tracking.lock); in frontbuffer_flush()
91 trace_intel_frontbuffer_flush(i915, frontbuffer_bits, origin); in frontbuffer_flush()
94 intel_drrs_flush(i915, frontbuffer_bits); in frontbuffer_flush()
95 intel_psr_flush(i915, frontbuffer_bits, origin); in frontbuffer_flush()
96 intel_fbc_flush(i915, frontbuffer_bits, origin); in frontbuffer_flush()
111 void intel_frontbuffer_flip_prepare(struct drm_i915_private *i915, in intel_frontbuffer_flip_prepare() argument
114 spin_lock(&i915->display.fb_tracking.lock); in intel_frontbuffer_flip_prepare()
115 i915->display.fb_tracking.flip_bits |= frontbuffer_bits; in intel_frontbuffer_flip_prepare()
117 i915->display.fb_tracking.busy_bits &= ~frontbuffer_bits; in intel_frontbuffer_flip_prepare()
118 spin_unlock(&i915->display.fb_tracking.lock); in intel_frontbuffer_flip_prepare()
131 void intel_frontbuffer_flip_complete(struct drm_i915_private *i915, in intel_frontbuffer_flip_complete() argument
134 spin_lock(&i915->display.fb_tracking.lock); in intel_frontbuffer_flip_complete()
136 frontbuffer_bits &= i915->display.fb_tracking.flip_bits; in intel_frontbuffer_flip_complete()
137 i915->display.fb_tracking.flip_bits &= ~frontbuffer_bits; in intel_frontbuffer_flip_complete()
138 spin_unlock(&i915->display.fb_tracking.lock); in intel_frontbuffer_flip_complete()
141 frontbuffer_flush(i915, frontbuffer_bits, ORIGIN_FLIP); in intel_frontbuffer_flip_complete()
155 void intel_frontbuffer_flip(struct drm_i915_private *i915, in intel_frontbuffer_flip() argument
158 spin_lock(&i915->display.fb_tracking.lock); in intel_frontbuffer_flip()
160 i915->display.fb_tracking.busy_bits &= ~frontbuffer_bits; in intel_frontbuffer_flip()
161 spin_unlock(&i915->display.fb_tracking.lock); in intel_frontbuffer_flip()
163 frontbuffer_flush(i915, frontbuffer_bits, ORIGIN_FLIP); in intel_frontbuffer_flip()
170 struct drm_i915_private *i915 = intel_bo_to_i915(front->obj); in __intel_fb_invalidate() local
173 spin_lock(&i915->display.fb_tracking.lock); in __intel_fb_invalidate()
174 i915->display.fb_tracking.busy_bits |= frontbuffer_bits; in __intel_fb_invalidate()
175 i915->display.fb_tracking.flip_bits &= ~frontbuffer_bits; in __intel_fb_invalidate()
176 spin_unlock(&i915->display.fb_tracking.lock); in __intel_fb_invalidate()
179 trace_intel_frontbuffer_invalidate(i915, frontbuffer_bits, origin); in __intel_fb_invalidate()
182 intel_psr_invalidate(i915, frontbuffer_bits, origin); in __intel_fb_invalidate()
183 intel_drrs_invalidate(i915, frontbuffer_bits); in __intel_fb_invalidate()
184 intel_fbc_invalidate(i915, frontbuffer_bits, origin); in __intel_fb_invalidate()
191 struct drm_i915_private *i915 = intel_bo_to_i915(front->obj); in __intel_fb_flush() local
194 spin_lock(&i915->display.fb_tracking.lock); in __intel_fb_flush()
196 frontbuffer_bits &= i915->display.fb_tracking.busy_bits; in __intel_fb_flush()
197 i915->display.fb_tracking.busy_bits &= ~frontbuffer_bits; in __intel_fb_flush()
198 spin_unlock(&i915->display.fb_tracking.lock); in __intel_fb_flush()
202 frontbuffer_flush(i915, frontbuffer_bits, origin); in __intel_fb_flush()
246 struct drm_i915_private *i915 = intel_bo_to_i915(obj); in intel_frontbuffer_get() local
265 spin_lock(&i915->display.fb_tracking.lock); in intel_frontbuffer_get()
267 spin_unlock(&i915->display.fb_tracking.lock); in intel_frontbuffer_get()