Re: [2.6.39] drm/i915: blank screen on Lenovo Ideapad U160

From: Jesse Barnes
Date: Wed Jun 15 2011 - 18:07:45 EST


On Thu, 16 Jun 2011 00:03:38 +0200
Dirk Gouders <gouders@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote:

> Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx> writes:
>
> > Oh is this not an LVDS panel? I'm curious which of the port disables
> > is at fault in your config then. If you have an eDP panel, it would
> > likely be the PCH_DP_D write. It could be a side effect of the
> > PANEL_UNLOCK_REGS write as well though, can you try commenting each of
> > those out?
>
> Yes, you are right. Commenting out a single line helps:
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 81a9059..ed95cbf 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -1356,7 +1356,7 @@ static void intel_disable_pch_ports(struct drm_i915_private *dev_priv,
> u32 reg, val;
>
> val = I915_READ(PCH_PP_CONTROL);
> - I915_WRITE(PCH_PP_CONTROL, val | PANEL_UNLOCK_REGS);
> + //I915_WRITE(PCH_PP_CONTROL, val | PANEL_UNLOCK_REGS);
>
> disable_pch_dp(dev_priv, pipe, PCH_DP_B);
> disable_pch_dp(dev_priv, pipe, PCH_DP_C);

Ok interesting, that means one of the locked regs we're trying to write
later is the real culprit for this issue... those include the LVDS reg
and the panel timing regs. I'll see if I can figure out which one
might be the problem.

--
Jesse Barnes, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/