Skip to content

Commit d66047e

Browse files
committed
drm/i915/cnl: Add WaRsDisableCoarsePowerGating
Old Wa added now forever on CNL all steppings. With CPU P states enabled along with RC6, dispatcher hangs can happen. Cc: Rafael Antognolli <[email protected]> Signed-off-by: Rodrigo Vivi <[email protected]> Reviewed-by: Radhakrishna Sripada <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
1 parent c4932d7 commit d66047e

File tree

3 files changed

+5
-4
lines changed

3 files changed

+5
-4
lines changed

drivers/gpu/drm/i915/i915_drv.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2788,9 +2788,10 @@ intel_info(const struct drm_i915_private *dev_priv)
27882788
/* Early gen2 have a totally busted CS tlb and require pinned batches. */
27892789
#define HAS_BROKEN_CS_TLB(dev_priv) (IS_I830(dev_priv) || IS_I845G(dev_priv))
27902790

2791-
/* WaRsDisableCoarsePowerGating:skl,bxt */
2791+
/* WaRsDisableCoarsePowerGating:skl,cnl */
27922792
#define NEEDS_WaRsDisableCoarsePowerGating(dev_priv) \
2793-
(IS_SKL_GT3(dev_priv) || IS_SKL_GT4(dev_priv))
2793+
(IS_CANNONLAKE(dev_priv) || \
2794+
IS_SKL_GT3(dev_priv) || IS_SKL_GT4(dev_priv))
27942795

27952796
/*
27962797
* dp aux and gmbus irq on gen4 seems to be able to generate legacy interrupts

drivers/gpu/drm/i915/intel_guc.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -370,7 +370,7 @@ int intel_guc_sample_forcewake(struct intel_guc *guc)
370370
u32 action[2];
371371

372372
action[0] = INTEL_GUC_ACTION_SAMPLE_FORCEWAKE;
373-
/* WaRsDisableCoarsePowerGating:skl,bxt */
373+
/* WaRsDisableCoarsePowerGating:skl,cnl */
374374
if (!HAS_RC6(dev_priv) || NEEDS_WaRsDisableCoarsePowerGating(dev_priv))
375375
action[1] = 0;
376376
else

drivers/gpu/drm/i915/intel_pm.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6715,7 +6715,7 @@ static void gen9_enable_rc6(struct drm_i915_private *dev_priv)
67156715

67166716
/*
67176717
* 3b: Enable Coarse Power Gating only when RC6 is enabled.
6718-
* WaRsDisableCoarsePowerGating:skl,bxt - Render/Media PG need to be disabled with RC6.
6718+
* WaRsDisableCoarsePowerGating:skl,cnl - Render/Media PG need to be disabled with RC6.
67196719
*/
67206720
if (NEEDS_WaRsDisableCoarsePowerGating(dev_priv))
67216721
I915_WRITE(GEN9_PG_ENABLE, 0);

0 commit comments

Comments
 (0)