[Intel-gfx] [PATCH 09/81] drm/i915/lvds: ditch ->prepare special case

Daniel Vetter daniel at ffwll.ch
Sun Jul 22 16:52:54 CEST 2012


On Wed, Jul 11, 2012 at 04:27:52PM +0200, Daniel Vetter wrote:
> LVDS is the first output where dpms on/off and prepare/commit don't
> perfectly match. Now the idea behind this special case seems to be
> that for simple resolution changes on the LVDS we don't need to stop
> the pipe, because (at least on newer chips) we can adjust the panel
> fitter on the fly.
> 
> There are a few problems with the current code though:
> - We still stop and restart the pipe unconditionally, because the crtc
>   helper code isn't flexible enough.
> - We show some ugly flickering, especially when changing crtcs (this
>   the crtc helper would actually take into account, but we don't
>   implement the encoder->get_crtc callback required to make this work
>   properly).
> 
> So it doesn't even work as advertised. I agree that it would be nice
> to do resolution changes on LVDS (and also eDP) whithout blacking the
> screen where the panel fitter allows to do that. But imo we should
> implement this as a special case a few layers up in the mode set code,
> akin to how we already detect simple framebuffer changes (and only
> update the required registers with ->mode_set_base).
> 
> Until this is all in place, make our lives easier and just rip it out.
> 
> Also note that this seems to fix actual bugs with enabling the lvds
> output, see:
> 
> http://lists.freedesktop.org/archives/intel-gfx/2012-July/018614.html
> 
> Cc: Takashi Iwai <tiwai at suse.de>
> Cc: Giacomo Comes <comes at naic.edu>
> Signed-Off-by: Daniel Vetter <daniel.vetter at ffwll.ch>

I've merged this with Chris' irc-ack (under the condition that the
modeset-rework leads to reinstated lvds fastpath that actually works
eventually). I've stalled a bit for tested-bys from Takashi, but he seems
to be awol atm.
-Daniel
-- 
Daniel Vetter
Mail: daniel at ffwll.ch
Mobile: +41 (0)79 365 57 48



More information about the Intel-gfx mailing list