[Intel-gfx] [PATCH 1/9] drm/i915: Don't ignore level 0 lines watermark for glk+
Lisovskiy, Stanislav
stanislav.lisovskiy at intel.com
Mon Jan 28 08:40:19 UTC 2019
On Fri, 2018-12-21 at 19:14 +0200, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> On glk+ the level 0 lines watermark actually matters. Do not ignore
> it.
> And while at it let's change things so that we always program a
> consistnet 0 to the register when the lines watermarks is ignored
> by the hardware.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_pm.c | 15 +++++++++++++--
> 1 file changed, 13 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_pm.c
> b/drivers/gpu/drm/i915/intel_pm.c
> index 2a6ffb8b975a..d132ef10fa60 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -4675,6 +4675,15 @@ skl_compute_plane_wm_params(const struct
> intel_crtc_state *cstate,
> return 0;
> }
>
> +static bool skl_wm_has_lines(struct drm_i915_private *dev_priv, int
> level)
> +{
> + if (INTEL_GEN(dev_priv) >= 10 || IS_GEMINILAKE(dev_priv))
> + return true;
> +
> + /* The number of lines are ignored for the level 0
> watermark. */
> + return level > 0;
> +}
> +
> static void skl_compute_plane_wm(const struct intel_crtc_state
> *cstate,
> const struct intel_plane_state
> *intel_pstate,
> int level,
> @@ -4757,8 +4766,10 @@ static void skl_compute_plane_wm(const struct
> intel_crtc_state *cstate,
> }
> }
>
> - /* The number of lines are ignored for the level 0
> watermark. */
> - if (level > 0 && res_lines > 31)
> + if (!skl_wm_has_lines(dev_priv, level))
> + res_lines = 0;
> +
> + if (res_lines > 31)
> return;
>
> /*
Reviewed-by: Stanislav Lisovskiy <stanislav.lisovskiy at intel.com>
--
Best Regards,
Lisovskiy Stanislav
More information about the Intel-gfx
mailing list