Message ID | 1464546923-13439-17-git-send-email-daniel.vetter@ffwll.ch (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sun, May 29, 2016 at 08:35:13PM +0200, Daniel Vetter wrote: > Again, just doing them as blocking commits isn't cool. > > From a cursory check hdlcd does seem to at least try to handle > drm_pending_vblank_event, so hopefully this works. > > Cc: Liviu Dudau <Liviu.Dudau@arm.com> > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Daniel, I have a proper implementation for this, which I will send out shortly, so I will NAK this patch. Best regards, Liviu > --- > drivers/gpu/drm/arm/hdlcd_drv.c | 8 +------- > 1 file changed, 1 insertion(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/arm/hdlcd_drv.c b/drivers/gpu/drm/arm/hdlcd_drv.c > index 4f909378d581..6d1877238cf0 100644 > --- a/drivers/gpu/drm/arm/hdlcd_drv.c > +++ b/drivers/gpu/drm/arm/hdlcd_drv.c > @@ -112,17 +112,11 @@ static void hdlcd_fb_output_poll_changed(struct drm_device *drm) > drm_fbdev_cma_hotplug_event(hdlcd->fbdev); > } > > -static int hdlcd_atomic_commit(struct drm_device *dev, > - struct drm_atomic_state *state, bool nonblock) > -{ > - return drm_atomic_helper_commit(dev, state, false); > -} > - > static const struct drm_mode_config_funcs hdlcd_mode_config_funcs = { > .fb_create = drm_fb_cma_create, > .output_poll_changed = hdlcd_fb_output_poll_changed, > .atomic_check = drm_atomic_helper_check, > - .atomic_commit = hdlcd_atomic_commit, > + .atomic_commit = drm_atomic_helper_commit, > }; > > static void hdlcd_setup_mode_config(struct drm_device *drm) > -- > 2.8.1 >
On Tue, May 31, 2016 at 12:02:23PM +0100, Liviu Dudau wrote: > On Sun, May 29, 2016 at 08:35:13PM +0200, Daniel Vetter wrote: > > Again, just doing them as blocking commits isn't cool. > > > > From a cursory check hdlcd does seem to at least try to handle > > drm_pending_vblank_event, so hopefully this works. > > > > Cc: Liviu Dudau <Liviu.Dudau@arm.com> > > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> > > Daniel, > > I have a proper implementation for this, which I will send out shortly, so I will > NAK this patch. Please don't implement your own atomic nonblocking commit any more. I have a generic solution, which this patch series implements and then also converts hdlcd over to it. I admit the commit message is a bit unclear with that. If you don't want to pick this up from the mailing lists it's also in my fdo git repo: https://cgit.freedesktop.org/~danvet/drm/log/ So nack on your nack ;-) Cheers, Daniel > > Best regards, > Liviu > > > --- > > drivers/gpu/drm/arm/hdlcd_drv.c | 8 +------- > > 1 file changed, 1 insertion(+), 7 deletions(-) > > > > diff --git a/drivers/gpu/drm/arm/hdlcd_drv.c b/drivers/gpu/drm/arm/hdlcd_drv.c > > index 4f909378d581..6d1877238cf0 100644 > > --- a/drivers/gpu/drm/arm/hdlcd_drv.c > > +++ b/drivers/gpu/drm/arm/hdlcd_drv.c > > @@ -112,17 +112,11 @@ static void hdlcd_fb_output_poll_changed(struct drm_device *drm) > > drm_fbdev_cma_hotplug_event(hdlcd->fbdev); > > } > > > > -static int hdlcd_atomic_commit(struct drm_device *dev, > > - struct drm_atomic_state *state, bool nonblock) > > -{ > > - return drm_atomic_helper_commit(dev, state, false); > > -} > > - > > static const struct drm_mode_config_funcs hdlcd_mode_config_funcs = { > > .fb_create = drm_fb_cma_create, > > .output_poll_changed = hdlcd_fb_output_poll_changed, > > .atomic_check = drm_atomic_helper_check, > > - .atomic_commit = hdlcd_atomic_commit, > > + .atomic_commit = drm_atomic_helper_commit, > > }; > > > > static void hdlcd_setup_mode_config(struct drm_device *drm) > > -- > > 2.8.1 > > > > -- > ==================== > | I would like to | > | fix the world, | > | but they're not | > | giving me the | > \ source code! / > --------------- > ¯\_(ツ)_/¯
On Tue, May 31, 2016 at 01:07:15PM +0200, Daniel Vetter wrote: > On Tue, May 31, 2016 at 12:02:23PM +0100, Liviu Dudau wrote: > > On Sun, May 29, 2016 at 08:35:13PM +0200, Daniel Vetter wrote: > > > Again, just doing them as blocking commits isn't cool. > > > > > > From a cursory check hdlcd does seem to at least try to handle > > > drm_pending_vblank_event, so hopefully this works. > > > > > > Cc: Liviu Dudau <Liviu.Dudau@arm.com> > > > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> > > > > Daniel, > > > > I have a proper implementation for this, which I will send out shortly, so I will > > NAK this patch. > > Please don't implement your own atomic nonblocking commit any more. I have > a generic solution, which this patch series implements and then also > converts hdlcd over to it. I admit the commit message is a bit unclear > with that. > > If you don't want to pick this up from the mailing lists it's also in my > fdo git repo: > > https://cgit.freedesktop.org/~danvet/drm/log/ > > So nack on your nack ;-) OK, in that case: Acked-by: Liviu Dudau <Liviu.Dudau@arm.com> Working towards validating your patch series with the HDLCD driver as well. Best regards, Liviu > > Cheers, Daniel > > > > > Best regards, > > Liviu > > > > > --- > > > drivers/gpu/drm/arm/hdlcd_drv.c | 8 +------- > > > 1 file changed, 1 insertion(+), 7 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/arm/hdlcd_drv.c b/drivers/gpu/drm/arm/hdlcd_drv.c > > > index 4f909378d581..6d1877238cf0 100644 > > > --- a/drivers/gpu/drm/arm/hdlcd_drv.c > > > +++ b/drivers/gpu/drm/arm/hdlcd_drv.c > > > @@ -112,17 +112,11 @@ static void hdlcd_fb_output_poll_changed(struct drm_device *drm) > > > drm_fbdev_cma_hotplug_event(hdlcd->fbdev); > > > } > > > > > > -static int hdlcd_atomic_commit(struct drm_device *dev, > > > - struct drm_atomic_state *state, bool nonblock) > > > -{ > > > - return drm_atomic_helper_commit(dev, state, false); > > > -} > > > - > > > static const struct drm_mode_config_funcs hdlcd_mode_config_funcs = { > > > .fb_create = drm_fb_cma_create, > > > .output_poll_changed = hdlcd_fb_output_poll_changed, > > > .atomic_check = drm_atomic_helper_check, > > > - .atomic_commit = hdlcd_atomic_commit, > > > + .atomic_commit = drm_atomic_helper_commit, > > > }; > > > > > > static void hdlcd_setup_mode_config(struct drm_device *drm) > > > -- > > > 2.8.1 > > > > > > > -- > > ==================== > > | I would like to | > > | fix the world, | > > | but they're not | > > | giving me the | > > \ source code! / > > --------------- > > ¯\_(ツ)_/¯ > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch >
diff --git a/drivers/gpu/drm/arm/hdlcd_drv.c b/drivers/gpu/drm/arm/hdlcd_drv.c index 4f909378d581..6d1877238cf0 100644 --- a/drivers/gpu/drm/arm/hdlcd_drv.c +++ b/drivers/gpu/drm/arm/hdlcd_drv.c @@ -112,17 +112,11 @@ static void hdlcd_fb_output_poll_changed(struct drm_device *drm) drm_fbdev_cma_hotplug_event(hdlcd->fbdev); } -static int hdlcd_atomic_commit(struct drm_device *dev, - struct drm_atomic_state *state, bool nonblock) -{ - return drm_atomic_helper_commit(dev, state, false); -} - static const struct drm_mode_config_funcs hdlcd_mode_config_funcs = { .fb_create = drm_fb_cma_create, .output_poll_changed = hdlcd_fb_output_poll_changed, .atomic_check = drm_atomic_helper_check, - .atomic_commit = hdlcd_atomic_commit, + .atomic_commit = drm_atomic_helper_commit, }; static void hdlcd_setup_mode_config(struct drm_device *drm)
Again, just doing them as blocking commits isn't cool. From a cursory check hdlcd does seem to at least try to handle drm_pending_vblank_event, so hopefully this works. Cc: Liviu Dudau <Liviu.Dudau@arm.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> --- drivers/gpu/drm/arm/hdlcd_drv.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-)