Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1364955

Re: [PATCH 06/23] drm: omapdrm: wait for pending operations before updating plane

From Sebastian Reichel <sre@kernel.org>
Newsgroups linux.kernel
Subject Re: [PATCH 06/23] drm: omapdrm: wait for pending operations before updating plane
Date 2016-03-26 17:00 +0100
Message-ID <rgYN4-2Qc-11@gated-at.bofh.it> (permalink)
References <rat9g-3s9-15@gated-at.bofh.it> <rat9h-3s9-39@gated-at.bofh.it> <rgYam-2B1-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

Hi Laurent,

On Sat, Mar 26, 2016 at 11:20:00AM +0200, Laurent Pinchart wrote:
> On Tuesday 08 Mar 2016 17:39:38 Sebastian Reichel wrote:
> > Updating the plane may interrupt ongoing display
> > updates, so wait for any pending operations.
> 
> There's already an omap_atomic_wait_for_completion() call a couple of lines 
> below, do we need two of them ? Why can display update be ongoing there, given 
> that the previous omap_atomic_complete() call did wait for completion before 
> returning?

This is a preparation for the manual display update. The planes
should not be touched while a manual display update is in progress.

I only checked the patches for the N950's manually updated DSI
panel, but none of the other supported panel types. Since I wasn't
sure what is triggered by the plane update for the other panel
types, I kept the second wait_for_completion.

I guess I will drop the second wait in the next revision and see
what happens.

-- Sebastian

> > Signed-off-By: Sebastian Reichel <sre@kernel.org>
> > ---
> >  drivers/gpu/drm/omapdrm/omap_drv.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c
> > b/drivers/gpu/drm/omapdrm/omap_drv.c index a3ff35f5f6cd..e142a4245766
> > 100644
> > --- a/drivers/gpu/drm/omapdrm/omap_drv.c
> > +++ b/drivers/gpu/drm/omapdrm/omap_drv.c
> > @@ -95,6 +95,10 @@ static void omap_atomic_complete(struct
> > omap_atomic_state_commit *commit) /* Apply the atomic update. */
> >  	dispc_runtime_get();
> > 
> > +	dev_dbg(dev->dev, "omap_atomic_complete");
> > +
> > +	omap_atomic_wait_for_completion(dev, old_state);
> > +
> >  	drm_atomic_helper_commit_modeset_disables(dev, old_state);
> >  	drm_atomic_helper_commit_planes(dev, old_state, false);
> >  	drm_atomic_helper_commit_modeset_enables(dev, old_state);
> 
> -- 
> Regards,
> 
> Laurent Pinchart
> 

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

Re: [PATCH 06/23] drm: omapdrm: wait for pending operations before updating plane Laurent Pinchart <laurent.pinchart@ideasonboard.com> - 2016-03-26 16:20 +0100
  Re: [PATCH 06/23] drm: omapdrm: wait for pending operations before  updating plane Sebastian Reichel <sre@kernel.org> - 2016-03-26 17:00 +0100

csiph-web