[Intel-gfx] [PATCH] drm/i915/cnl: WaForceEnableNonCoherent
Oscar Mateo
oscar.mateo at intel.com
Thu Aug 24 22:42:05 UTC 2017
On 08/23/2017 03:02 PM, Rodrigo Vivi wrote:
> Must Force Non-Coherent whenever executing a 3D context.
> This is a workaround for a possible hang in the unlikely event
> a TLB invalidation occurs during a PSD flush.
> Set masked bit 4 in 0x7300 during boot.
This bug should not be present in HW anymore. A different reason to keep
doing this is performance, though.
> Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
> Cc: Oscar Mateo <oscar.mateo at intel.com>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
> ---
> drivers/gpu/drm/i915/intel_engine_cs.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
> index a6ac9d0a4156..7dfc78b038c4 100644
> --- a/drivers/gpu/drm/i915/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
> @@ -1071,8 +1071,11 @@ static int cnl_init_workarounds(struct intel_engine_cs *engine)
> int ret;
>
> /* WaForceContextSaveRestoreNonCoherent:cnl */
> + /* WaForceEnableNonCoherent:cnl */
> WA_SET_BIT_MASKED(CNL_HDC_CHICKEN0,
> - HDC_FORCE_CONTEXT_SAVE_RESTORE_NON_COHERENT);
> + HDC_FORCE_CONTEXT_SAVE_RESTORE_NON_COHERENT |
> + HDC_FORCE_NON_COHERENT);
> +
>
> /* WaDisableReplayBufferBankArbitrationOptimization:cnl */
> WA_SET_BIT_MASKED(COMMON_SLICE_CHICKEN2,
More information about the Intel-gfx
mailing list