[PATCH 1/1] drm: i915: don't use OpRegion for XPS 13 IvyBridge

Jani Nikula jani.nikula at linux.intel.com
Mon Aug 29 07:24:38 UTC 2016


On Sun, 28 Aug 2016, Andrea Arcangeli <aarcange at redhat.com> wrote:
> Skylake was already singled out, but it doesn't cover the XPS 13 L332X
> model which is based on IvyBridge.
>
> The commit that introduced the regression is
> 1d6da87a3241deb13d073c4125d19ed0e5a0c62c

That's a merge commit, the real one is

commit a05628195a0d9f3173dd9aa76f482aef692e46ee
Author: Ville Syrjälä <ville.syrjala at linux.intel.com>
Date:   Mon Apr 11 10:23:51 2016 +0300

    drm/i915: Get panel_type from OpRegion panel details

> The Skylake workaround for the regression was introduced in commit
> aeddda06c1a704bb97c8a7bfe7a472120193bd56
>
> Signed-off-by: Andrea Arcangeli <aarcange at redhat.com>
> ---
>  drivers/gpu/drm/i915/intel_opregion.c | 12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_opregion.c b/drivers/gpu/drm/i915/intel_opregion.c
> index adca262..ca17ab6 100644
> --- a/drivers/gpu/drm/i915/intel_opregion.c
> +++ b/drivers/gpu/drm/i915/intel_opregion.c
> @@ -1073,12 +1073,14 @@ intel_opregion_get_panel_type(struct drm_i915_private *dev_priv)
>  	}
>  
>  	/*
> -	 * FIXME On Dell XPS 13 9350 the OpRegion panel type (0) gives us
> -	 * low vswing for eDP, whereas the VBT panel type (2) gives us normal
> -	 * vswing instead. Low vswing results in some display flickers, so
> -	 * let's simply ignore the OpRegion panel type on SKL for now.
> +	 * FIXME On Dell XPS 13 9350 and Dell XPS 13 L322X the
> +	 * OpRegion panel type (0) gives us low vswing for eDP,
> +	 * whereas the VBT panel type (2) gives us normal vswing
> +	 * instead. Low vswing results in some display flickers, so
> +	 * let's simply ignore the OpRegion panel type on SKL and
> +	 * IVYBRIDGE for now.
>  	 */

If it's an Iybridge, there's no low vswing, and that explanation is
false. You can verify by trying i915.edp_vswing=1 or i915.edp_vswing=2
on an unpatched kernel.

Doesn't mean there can't be something else wrong with the mode you get
using a different panel_type. And this makes me wonder what the point is
in trying to patch up the commit instead of reverting.


BR,
Jani.



> -	if (IS_SKYLAKE(dev_priv)) {
> +	if (IS_SKYLAKE(dev_priv) || IS_IVYBRIDGE(dev_priv)) {
>  		DRM_DEBUG_KMS("Ignoring OpRegion panel type (%d)\n", ret - 1);
>  		return -ENODEV;
>  	}
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the dri-devel mailing list