[Intel-gfx] SNB LVDS goes all stripy at times with rc6 enabled

Jesse Barnes jbarnes at virtuousgeek.org
Thu Jul 28 17:19:26 CEST 2011


On Wed, 27 Jul 2011 23:08:08 -0700
Keith Packard <keithp at keithp.com> wrote:

> On Wed, 27 Jul 2011 09:06:09 -0700, Jesse Barnes <jbarnes at virtuousgeek.org> wrote:
> 
> > I tried this last week with my patch
> 
> So, with the intel_crtc DPMS tracking fixed, this problem can now be
> easily reproduced in a wide range of situations.
> 
> It does not depend on the output in question -- Jesse and I have managed
> to make this happen on VGA, DP, LVDS and HDMI. The only thing we haven't
> tested is eDP. That one would be particularly interesting as it doesn't
> depend on the PCH. Anyone have an SNB machine with an eDP panel and an
> external monitor to try?
> 
> It does not depend on the position of the outputs on the screen, all
> that it requires is that one output be disabled and then the other
> output get a new mode. Something like:
> 
> $ xrandr --output LVDS1 --pos 0x0 --mode 1024x768 --output DP2 --pos 0x0 --mode 1024x768
> $ xrandr --output DP2 --off
> $ xrandr --output LVDS1 --auto  # this assumes that LVDS1 is larger than 1024x768
> 
> The PCH reports no FDI data errors, and if you send the errant monitor
> the PCH-internal test signal (bit 31, register 0xf0e30 and 0xf1e30), it
> displays that correctly.
> 
> So, it surely looks like the CPU is sending the wrong data to the PCH in
> this case.
> 
> At this point, I have only two proposed ugly work-arounds:
> 
>  1) Disable rc6.
>  2) Once a crtc is turned on, leave it on.
> 
> Neither of these is appealing for obvious reasons.
> 
> At this point, it seems like the most likely cause is in the crtc
> disabling code; some ordering issue or missing pieces may be scrambling
> some hidden internal state.

Yes this problem has me very frustrated.  We still have two big open
questions to answer before we really understand things:
  1) why the heck does rc6 make any difference at all?
  2) why does enabling the second pipe make things good again?

Theoretically, we're coming pretty close to shutting everything down
after we disable the second crtc and set a mode on the first again.  I
wonder if an even bigger hammer (shut *everything* down and wait a few
ms) would improve the situation...

I guess we have more things to try today...

-- 
Jesse Barnes, Intel Open Source Technology Center



More information about the Intel-gfx mailing list