[Intel-gfx] drm/i915: don't change DRM configuration when releasing load detect pipe

Brice Goglin Brice.Goglin at gmail.com
Mon Mar 8 21:59:29 CET 2010


Eric Anholt wrote:
> On Thu, 18 Feb 2010 14:51:54 -0800, Jesse Barnes <jbarnes at virtuousgeek.org> wrote:
>   
>> When we get a CRTC to use for load detection, we restore its DPMS state
>> if needed.  We shouldn't, however, change the DRM configuration by
>> calling drm_helper_disable_unused_functions when we release the CRTC.
>> Doing so can cause problems with resume, since at suspend or lid close
>> time, X may choose to probe outputs.  If it doesn't re-probe them at
>> open or resume time, LVDS won't be restored, since
>> drm_helper_disable_unused_functions will have turned it off, preventing
>> the mode set at lid open from restoring it.
>>     
>
> It seems to me like the bug is that drm_helper_disable_unused_functions
> whacks the configuration.  Why should it do that?
>
> 		if (connector->status == connector_status_disconnected)
> 			connector->encoder = NULL;
>
> This function back in UMS used to be about getting the system from
> unknown bootup state to other junk being turned off after the initial
> modeset (which was of course broken, since having the other junk turned
> on during modeset could break things, so really it should have been
> intel_turn_everything_off_thanks() before doing a modeset).
>
> Once that's fixed, it seems like it'd be a replacement for the
> turn-off-after-load-detect logic in the load detect pipe release
> function.
>   

Did anything get applied to fix this issue in the end ? Jesse's initial
patch fixed blank screens on my i 945 so I am still applying it to my
kernels for now.

thanks,
Brice




More information about the Intel-gfx mailing list