Jani Nikula
2024-Jun-18 09:38 UTC
[PATCH v7 2/9] drm: Support per-plane async flip configuration
On Tue, 18 Jun 2024, Andr? Almeida <andrealmeid at igalia.com> wrote:> Drivers have different capabilities on what plane types they can or > cannot perform async flips. Create a plane::async_flip field so each > driver can choose which planes they allow doing async flips. > > Signed-off-by: Andr? Almeida <andrealmeid at igalia.com> > --- > include/drm/drm_plane.h | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/include/drm/drm_plane.h b/include/drm/drm_plane.h > index 9507542121fa..0bebc72af5c3 100644 > --- a/include/drm/drm_plane.h > +++ b/include/drm/drm_plane.h > @@ -786,6 +786,11 @@ struct drm_plane { > * @kmsg_panic: Used to register a panic notifier for this plane > */ > struct kmsg_dumper kmsg_panic; > + > + /** > + * @async_flip: indicates if a plane can do async flips > + */When is it okay to set or change the value of this member? If you don't document it, people will find creative uses for this. BR, Jani.> + bool async_flip; > }; > > #define obj_to_plane(x) container_of(x, struct drm_plane, base)-- Jani Nikula, Intel
Dmitry Baryshkov
2024-Jun-18 10:07 UTC
[PATCH v7 2/9] drm: Support per-plane async flip configuration
On Tue, 18 Jun 2024 at 12:38, Jani Nikula <jani.nikula at linux.intel.com> wrote:> > On Tue, 18 Jun 2024, Andr? Almeida <andrealmeid at igalia.com> wrote: > > Drivers have different capabilities on what plane types they can or > > cannot perform async flips. Create a plane::async_flip field so each > > driver can choose which planes they allow doing async flips. > > > > Signed-off-by: Andr? Almeida <andrealmeid at igalia.com> > > --- > > include/drm/drm_plane.h | 5 +++++ > > 1 file changed, 5 insertions(+) > > > > diff --git a/include/drm/drm_plane.h b/include/drm/drm_plane.h > > index 9507542121fa..0bebc72af5c3 100644 > > --- a/include/drm/drm_plane.h > > +++ b/include/drm/drm_plane.h > > @@ -786,6 +786,11 @@ struct drm_plane { > > * @kmsg_panic: Used to register a panic notifier for this plane > > */ > > struct kmsg_dumper kmsg_panic; > > + > > + /** > > + * @async_flip: indicates if a plane can do async flips > > + */ > > When is it okay to set or change the value of this member? > > If you don't document it, people will find creative uses for this.Maybe it's better to have a callback instead of a static field? This way it becomes clear that it's only relevant at the time of the atomic_check().> > + bool async_flip; > > }; > > > > #define obj_to_plane(x) container_of(x, struct drm_plane, base) > > -- > Jani Nikula, Intel-- With best wishes Dmitry