From: Paulo Zanoni <paulo.r.zanoni@intel.com>
To: Rodrigo Vivi <rodrigo.vivi@intel.com>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915: Display WA #1133 WaFbcSkipSegments:cnl, glk
Date: Tue, 05 Sep 2017 16:16:01 -0300 [thread overview]
Message-ID: <1504638961.2824.38.camel@intel.com> (raw)
In-Reply-To: <20170905190716.27462-1-rodrigo.vivi@intel.com>
Em Ter, 2017-09-05 às 12:07 -0700, Rodrigo Vivi escreveu:
> Skip compressing 1 segment at the end of the frame,
> avoid a pixel count mismatch nuke event when last active
> pixel and dummy pixel has same color for Odd Plane
> Width / Height.
>
> For both platforms Gemini Lake and Cannon Lake.
>
> v2: Use function-like macro and also use mask to clean
> to make sure bit 11 is 0. (Suggested by Paulo).
> v3: Add Display WA notation and also apply for GLK.
> Both Forgotten on v2.
> Using "GLK_" prefix since GLK came before CNL.
> v4: Forgot to "|=" when moving directly macro to masked
> val. (Noticed by Paulo.)
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
>
> Cc: Imre Deak <imre.deak@intel.com>
> Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> ---
> drivers/gpu/drm/i915/i915_reg.h | 3 +++
> drivers/gpu/drm/i915/intel_pm.c | 14 ++++++++++++++
> 2 files changed, 17 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_reg.h
> b/drivers/gpu/drm/i915/i915_reg.h
> index c718c2f2eaeb..fbf824b6e37a 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -2940,6 +2940,9 @@ enum i915_power_well_id {
> #define ILK_DPFC_CHICKEN _MMIO(0x43224)
> #define ILK_DPFC_DISABLE_DUMMY0 (1<<8)
> #define ILK_DPFC_NUKE_ON_ANY_MODIFICATION (1<<23)
> +#define GLK_SKIP_SEG_EN (1<<12)
> +#define GLK_SKIP_SEG_COUNT_MASK (3<<10)
> +#define GLK_SKIP_SEG_COUNT(x) ((x)<<10)
> #define ILK_FBC_RT_BASE _MMIO(0x2128)
> #define ILK_FBC_RT_VALID (1<<0)
> #define SNB_FBC_FRONT_BUFFER (1<<1)
> diff --git a/drivers/gpu/drm/i915/intel_pm.c
> b/drivers/gpu/drm/i915/intel_pm.c
> index b0ba5a1018cd..6abad2048b23 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -125,6 +125,7 @@ static void bxt_init_clock_gating(struct
> drm_i915_private *dev_priv)
>
> static void glk_init_clock_gating(struct drm_i915_private *dev_priv)
> {
> + u32 val;
> gen9_init_clock_gating(dev_priv);
>
> /*
> @@ -144,6 +145,11 @@ static void glk_init_clock_gating(struct
> drm_i915_private *dev_priv)
> I915_WRITE(CHICKEN_MISC_2, val);
> }
>
> + /* Display WA #1133: WaFbcSkipSegments:glk */
> + val = I915_READ(ILK_DPFC_CHICKEN);
> + val &= ~GLK_SKIP_SEG_COUNT_MASK;
> + val |= GLK_SKIP_SEG_EN | GLK_SKIP_SEG_COUNT(1);
> + I915_WRITE(ILK_DPFC_CHICKEN, val);
> }
>
> static void i915_pineview_get_mem_freq(struct drm_i915_private
> *dev_priv)
> @@ -8266,6 +8272,8 @@ static void gen8_set_l3sqc_credits(struct
> drm_i915_private *dev_priv,
>
> static void cnl_init_clock_gating(struct drm_i915_private *dev_priv)
> {
> + u32 val;
> +
> /* This is not an Wa. Enable for better image quality */
> I915_WRITE(_3D_CHICKEN3,
> _MASKED_BIT_ENABLE(_3D_CHICKEN3_AA_LINE_QUALITY_F
> IX_ENABLE));
> @@ -8283,6 +8291,12 @@ static void cnl_init_clock_gating(struct
> drm_i915_private *dev_priv)
> I915_WRITE(SLICE_UNIT_LEVEL_CLKGATE,
> I915_READ(SLICE_UNIT_LEVEL_CLKGATE) |
> SARBUNIT_CLKGATE_DIS);
> +
> + /* Display WA #1133: WaFbcSkipSegments:cnl */
> + val = I915_READ(ILK_DPFC_CHICKEN);
> + val &= ~GLK_SKIP_SEG_COUNT_MASK;
> + val |= GLK_SKIP_SEG_EN | GLK_SKIP_SEG_COUNT(1);
> + I915_WRITE(ILK_DPFC_CHICKEN, val);
> }
>
> static void kbl_init_clock_gating(struct drm_i915_private *dev_priv)
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2017-09-05 19:16 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-29 23:08 [PATCH] drm/i915/cnl: WaFbcSkipSegments Rodrigo Vivi
2017-08-29 23:59 ` ✓ Fi.CI.BAT: success for " Patchwork
2017-08-30 3:40 ` ✗ Fi.CI.IGT: failure " Patchwork
2017-09-01 21:04 ` [PATCH] " Paulo Zanoni
2017-09-01 21:31 ` Rodrigo Vivi
2017-09-04 18:05 ` Paulo Zanoni
2017-09-05 17:56 ` Rodrigo Vivi
2017-09-05 18:05 ` [PATCH] drm/i915: Display WA #1133 WaFbcSkipSegments:cnl, glk Rodrigo Vivi
2017-09-05 18:59 ` Paulo Zanoni
2017-09-05 19:07 ` Rodrigo Vivi
2017-09-05 19:16 ` Paulo Zanoni [this message]
2017-09-05 18:23 ` ✓ Fi.CI.BAT: success for drm/i915/cnl: WaFbcSkipSegments (rev3) Patchwork
2017-09-05 19:26 ` ✓ Fi.CI.BAT: success for drm/i915/cnl: WaFbcSkipSegments (rev4) Patchwork
2017-09-05 20:43 ` ✗ Fi.CI.IGT: warning for drm/i915/cnl: WaFbcSkipSegments (rev3) Patchwork
2017-09-05 22:19 ` ✗ Fi.CI.IGT: failure for drm/i915/cnl: WaFbcSkipSegments (rev4) Patchwork
[not found] <Message-id: <1504638961.2824.38.camel@intel.com>
2017-09-05 19:30 ` [PATCH] drm/i915: Display WA #1133 WaFbcSkipSegments:cnl, glk Rodrigo Vivi
2017-09-06 20:43 ` Rodrigo Vivi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1504638961.2824.38.camel@intel.com \
--to=paulo.r.zanoni@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=rodrigo.vivi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.