mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-08-22 00:42:01 +02:00

Perform manual transient cache flush prior to flip and at the end of frontbuffer_flush. This is needed to ensure display engine doesn't see garbage if the surface is L3:XD dirty. Testcase: igt@xe-pat@display-vs-wb-transient Signed-off-by: Matthew Auld <matthew.auld@intel.com> Signed-off-by: Balasubramani Vivekanandan <balasubramani.vivekanandan@intel.com> Acked-by: Nirmoy Das <nirmoy.das@intel.com> Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Radhakrishna Sripada <radhakrishna.sripada@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240430172850.1881525-19-radhakrishna.sripada@intel.com
26 lines
718 B
C
26 lines
718 B
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2024 Intel Corporation
|
|
*/
|
|
|
|
#ifndef __INTEL_TDF_H__
|
|
#define __INTEL_TDF_H__
|
|
|
|
/*
|
|
* TDF (Transient-Data-Flush) is needed for Xe2+ where special L3:XD caching can
|
|
* be enabled through various PAT index modes. Idea is to use this caching mode
|
|
* when for example rendering onto the display surface, with the promise that
|
|
* KMD will ensure transient cache entries are always flushed by the time we do
|
|
* the display flip, since display engine is never coherent with CPU/GPU caches.
|
|
*/
|
|
|
|
struct drm_i915_private;
|
|
|
|
#ifdef I915
|
|
static inline void intel_td_flush(struct drm_i915_private *i915) {}
|
|
#else
|
|
void intel_td_flush(struct drm_i915_private *i915);
|
|
#endif
|
|
|
|
#endif
|