Re: [PATCH 3/6] drm/vc4: Don't check plane state more than once

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 15 Nov 2018 12:41:36 -0800
Eric Anholt <eric@xxxxxxxxxx> wrote:

> Boris Brezillon <boris.brezillon@xxxxxxxxxxx> writes:
> 
> > We are about to use vc4_plane_mode_set() in the async check path, but
> > async check can decide that async update is not possible and force the
> > driver to fallback to a sync update.
> >
> > All the checks that have been done on the plane state during async check
> > stay valid, and checking it again is not necessary. Add a ->checked
> > field to vc4_plane_state, and use it to track the status of the state
> > (checked or not).
> >
> > Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxx>
> > ---
> >  drivers/gpu/drm/vc4/vc4_drv.h   |  5 +++++
> >  drivers/gpu/drm/vc4/vc4_plane.c | 10 ++++++++++
> >  2 files changed, 15 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/vc4/vc4_drv.h b/drivers/gpu/drm/vc4/vc4_drv.h
> > index 9ed05fb61eb6..d1000c4805c2 100644
> > --- a/drivers/gpu/drm/vc4/vc4_drv.h
> > +++ b/drivers/gpu/drm/vc4/vc4_drv.h
> > @@ -370,6 +370,11 @@ struct vc4_plane_state {
> >  	 * to enable background color fill.
> >  	 */
> >  	bool needs_bg_fill;
> > +
> > +	/* Mark the state as checked. Useful to avoid checking it twice when
> > +	 * async update is not possible.
> > +	 */
> > +	bool checked;
> >  };  
> 
> Since this doesn't cover the whole atomic_check process, which won't
> have been called from async update, maybe rename to dlist_initialized or
> something?

Do you mean that vc4_plane_mode_set() should be run again from the sync
check path when async check failed, or is it just the name you don't
like?
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux