[Intel-gfx] [PATCH 08/13] drm/i915/psr: Implement WaPsrDPAMaskVBlankInSRD:hsw
Hogander, Jouni
jouni.hogander at intel.com
Fri Apr 28 10:36:17 UTC 2023
On Fri, 2023-04-21 at 15:03 +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Implement WaPsrDPAMaskVBlankInSRD:hsw, which makes the hardware
> generate the extra vblank between link training and first frame
> being transmitted. This is the same thing that's controlled by
> TRANS_CHICKEN[21] on skl+ (but due to the funky double buffering
> it's effectively always at the rest value after DC5 exit). So
> for consistent behaviour we want every platform to generate said
> vblank. BDW is already setting this up correctly.
I couldn't find this from Bspec. I'll guess you have some offline
documentation? WaPsrDPRSUnmaskVBlankInSRD seems to be in Bspec.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_clock_gating.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/intel_clock_gating.c
> b/drivers/gpu/drm/i915/intel_clock_gating.c
> index a27600bc5976..9682323510cd 100644
> --- a/drivers/gpu/drm/i915/intel_clock_gating.c
> +++ b/drivers/gpu/drm/i915/intel_clock_gating.c
> @@ -562,6 +562,9 @@ static void hsw_init_clock_gating(struct
> drm_i915_private *i915)
> /* WaFbcAsynchFlipDisableFbcQueue:hsw,bdw */
> intel_uncore_rmw(&i915->uncore, CHICKEN_PIPESL_1(PIPE_A), 0,
> HSW_FBCQ_DIS);
>
> + /* WaPsrDPAMaskVBlankInSRD:hsw */
> + intel_uncore_rmw(&i915->uncore, CHICKEN_PAR1_1, 0,
> HSW_MASK_VBL_TO_PIPE_IN_SRD);
> +
> /* This is required by WaCatErrorRejectionIssue:hsw */
> intel_uncore_rmw(&i915->uncore,
> GEN7_SQ_CHICKEN_MBCUNIT_CONFIG,
> 0, GEN7_SQ_CHICKEN_MBCUNIT_SQINTMOB);
BR,
Jouni Högander
More information about the Intel-gfx
mailing list