Skip to content

Commit

Permalink
drm/i915/skl: Add WAC6entrylatency
Browse files Browse the repository at this point in the history
This workaround is for fbc working with rc6 on skylake. Bspec
states that setting this bit needs to be coordinated with uncore
but offers no further details.

v2: rebase

References: HSD#4712857
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1465309159-30531-18-git-send-email-mika.kuoppala@intel.com
  • Loading branch information
Mika Kuoppala authored and Mika Kuoppala committed Jun 8, 2016
1 parent 6fc2913 commit 44fff99
Showing 2 changed files with 9 additions and 0 deletions.
3 changes: 3 additions & 0 deletions drivers/gpu/drm/i915/i915_reg.h
Original file line number Diff line number Diff line change
@@ -2167,6 +2167,9 @@ enum skl_disp_power_wells {

#define FBC_LL_SIZE (1536)

#define FBC_LLC_READ_CTRL _MMIO(0x9044)
#define FBC_LLC_FULLY_OPEN (1<<30)

/* Framebuffer compression for GM45+ */
#define DPFC_CB_BASE _MMIO(0x3200)
#define DPFC_CONTROL _MMIO(0x3208)
6 changes: 6 additions & 0 deletions drivers/gpu/drm/i915/intel_pm.c
Original file line number Diff line number Diff line change
@@ -6992,7 +6992,13 @@ static void kabylake_init_clock_gating(struct drm_device *dev)

static void skylake_init_clock_gating(struct drm_device *dev)
{
struct drm_i915_private *dev_priv = dev->dev_private;

gen9_init_clock_gating(dev);

/* WAC6entrylatency:skl */
I915_WRITE(FBC_LLC_READ_CTRL, I915_READ(FBC_LLC_READ_CTRL) |
FBC_LLC_FULLY_OPEN);
}

static void broadwell_init_clock_gating(struct drm_device *dev)

0 comments on commit 44fff99

Please sign in to comment.