Re: [PATCH v3 15/19] drm/i915: atomic plane updates in a nutshell

Daniel Vetter
2015-06-22T12:31:03Z

On Mon, Jun 22, 2015 at 12:08:36PM +0200, Maarten Lankhorst wrote:
> >>> Why are we still commiting planes on a disabled pipes?
> >>>
> >>> The way I envisioned the modeset path looking is something like this:
> >>>
> >>> 1. atomically disable all planes for pipes getting disabled
> >>> 2. disable all pipes that need disabling
> >>> 3. enable all pipes that need enabling
> >>> 4. atomically update all planes that require it on now active pipes
> >>>
> >>>
> >> I looked for other ways to do this, but they were ugly. Only updating sw state in commit_planes for disabled crtc's made things a lot cleaner without worrying about special cases.
> > The commit hooks shouldn't update any sw state.

I looked at that a bit and the plane disabling (i.e. step 2 above) doesn't
touch state objects. plane->fb is still a bit a sorry state since
apparently page_flip won't update this properly. There's even a TODO about
this in drm_atomic_helper_page_flip, I guess I should finally address this
one asap.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation