From: Laurent Pinchart <laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
To: "Grodzovsky, Andrey" <Andrey.Grodzovsky-5C7GfCeVMHo@public.gmane.org>
Cc: "Deucher,
Alexander" <Alexander.Deucher-5C7GfCeVMHo@public.gmane.org>,
"nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
<nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
"amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
<amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
"dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
<dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
"daniel.vetter-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org"
<daniel.vetter-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Subject: Re: [PATCH 1/4] drm/atomic: Save flip flags in drm_plane_state
Date: Tue, 17 Jan 2017 11:03:59 +0200 [thread overview]
Message-ID: <4607418.ZFnDrv1sq5@avalon> (raw)
In-Reply-To: <DM5PR12MB1147FF9E484370F1572CB9C3EA7C0-2J9CzHegvk9IwjGPM8RDJwdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
Hi Andrey,
On Tuesday 17 Jan 2017 04:03:11 Grodzovsky, Andrey wrote:
> On Monday, January 16, 2017 5:18 PM Laurent Pinchart wrote:
> > On Monday 16 Jan 2017 10:44:55 Andrey Grodzovsky wrote:
> > > Allows using atomic flip helpers for drivers using ASYNC flip.
> > > Remove ASYNC_FLIP restriction in helpers and caches the page flip
> > > flags in drm_plane_state to be used in the low level drivers.
> > >
> >> Signed-off-by: Andrey Grodzovsky <Andrey.Grodzovsky@amd.com>
> >> ---
> >>
> >> drivers/gpu/drm/drm_atomic_helper.c | 10 +++-------
> >> include/drm/drm_plane.h | 8 ++++++++
> >> 2 files changed, 11 insertions(+), 7 deletions(-)
> >>
> >> diff --git a/drivers/gpu/drm/drm_atomic_helper.c
> >> b/drivers/gpu/drm/drm_atomic_helper.c index a4e5477..f83dc43 100644
> >> --- a/drivers/gpu/drm/drm_atomic_helper.c
> >> +++ b/drivers/gpu/drm/drm_atomic_helper.c
> >> @@ -2737,7 +2737,8 @@ static int page_flip_common(
> >> struct drm_atomic_state *state,
> >> struct drm_crtc *crtc,
> >> struct drm_framebuffer *fb,
> >> - struct drm_pending_vblank_event *event)
> >> + struct drm_pending_vblank_event *event,
> >> + uint32_t flags)
> >> {
> >> struct drm_plane *plane = crtc->primary;
> >> struct drm_plane_state *plane_state;
> >> @@ -2754,6 +2755,7 @@ static int page_flip_common(
> >> if (IS_ERR(plane_state))
> >> return PTR_ERR(plane_state);
> >>
> >> + plane_state->pflip_flags = flags;
> >>
> >> ret = drm_atomic_set_crtc_for_plane(plane_state, crtc);
> >> if (ret != 0)
> >> @@ -2800,9 +2802,6 @@ int drm_atomic_helper_page_flip(struct drm_crtc
> >> *crtc,
> >> struct drm_atomic_state *state;
> >> int ret = 0;
> >>
> >> - if (flags & DRM_MODE_PAGE_FLIP_ASYNC)
> >> - return -EINVAL;
> >> -
> >
> > With this change all drivers using the helper will not reject that async
> > flag, even if they don't implement support for async page flip. You need
> > to either patch them all to reject the flag, or implement async page flip
> > support for all of them (preferable in the helpers, and then remove the
>
> Please check drm_mode_page_flip_ioctl, one of the checks in the beginning is
>
> if ((page_flip->flags & DRM_MODE_PAGE_FLIP_ASYNC) &&
> !dev->mode_config.async_page_flip) return -EINVAL;
I think you're right. Sorry for the noise.
> We in DC explicitly set dev->mode_config.async_page_flip = true, any driver
> which is Not supporting ASYNC flip will fail the IOCTL at this point.
> Same in drm_mode_atomic_ioctl
>
> > * Note that for now so called async page flips (i.e. updates which are
> > not
> > * synchronized to vblank) are not supported, since the atomic interfaces
> > have
> > * no provisions for this yet.
> >
> > comment).
>
> Thanks, that a good catch, will remove.
--
Regards,
Laurent Pinchart
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
next prev parent reply other threads:[~2017-01-17 9:03 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-16 15:44 [PATCH 0/4] Allow ASYNC flip with atomic helpers Andrey Grodzovsky
2017-01-16 15:44 ` [PATCH 1/4] drm/atomic: Save flip flags in drm_plane_state Andrey Grodzovsky
[not found] ` <1484581498-32309-2-git-send-email-Andrey.Grodzovsky-5C7GfCeVMHo@public.gmane.org>
2017-01-16 20:21 ` Gustavo Padovan
2017-01-16 20:53 ` Grodzovsky, Andrey
2017-01-23 8:54 ` Daniel Vetter
2017-01-23 19:48 ` Cheng, Tony
[not found] ` <MWHPR12MB14066404FBCEF3C03EF24BF998720-Gy0DoCVfaSXS1+HfpYZxvgdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2017-01-26 5:01 ` Grodzovsky, Andrey
[not found] ` <DM5PR12MB1147AEF3F8CFFAD4B69E114EEA770-2J9CzHegvk9IwjGPM8RDJwdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2017-01-26 9:40 ` Daniel Vetter
2017-01-26 9:39 ` Daniel Vetter
2017-01-16 22:18 ` Laurent Pinchart
2017-01-17 4:03 ` Grodzovsky, Andrey
[not found] ` <DM5PR12MB1147FF9E484370F1572CB9C3EA7C0-2J9CzHegvk9IwjGPM8RDJwdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2017-01-17 9:03 ` Laurent Pinchart [this message]
2017-01-17 8:14 ` Ville Syrjälä
[not found] ` <1484581498-32309-1-git-send-email-Andrey.Grodzovsky-5C7GfCeVMHo@public.gmane.org>
2017-01-16 15:44 ` [PATCH 2/4] drm/amdgpu: Remove flip_flag from amdgpu_crtc Andrey Grodzovsky
2017-01-16 22:15 ` Laurent Pinchart
2017-01-16 15:44 ` [PATCH 3/4] drm/amd/display: Switch to using atomic_helper for flip Andrey Grodzovsky
2017-01-16 22:16 ` Laurent Pinchart
2017-01-18 1:50 ` Michel Dänzer
2017-01-18 12:02 ` Laurent Pinchart
2017-01-18 22:18 ` Grodzovsky, Andrey
[not found] ` <DM5PR12MB1147CFCD90203061E0F2EB95EA7F0-2J9CzHegvk9IwjGPM8RDJwdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2017-01-19 2:14 ` Michel Dänzer
2017-01-19 4:57 ` [PATCH v3 2/3] " Andrey Grodzovsky
2017-01-16 15:44 ` [PATCH 4/4] drm/nouveau/kms/nv50: Switch to using atomic helper " Andrey Grodzovsky
2017-01-16 20:39 ` [PATCH 0/4] Allow ASYNC flip with atomic helpers Laurent Pinchart
2017-01-16 21:13 ` Harry Wentland
2017-01-16 22:14 ` Laurent Pinchart
2017-01-23 8:53 ` Daniel Vetter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4607418.ZFnDrv1sq5@avalon \
--to=laurent.pinchart-rylnwiuwjnjg/c1bvhzhaw@public.gmane.org \
--cc=Alexander.Deucher-5C7GfCeVMHo@public.gmane.org \
--cc=Andrey.Grodzovsky-5C7GfCeVMHo@public.gmane.org \
--cc=amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=daniel.vetter-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox