Hi Thomas, Thank you for the patch. On Fri, Sep 09, 2022 at 12:59:47PM +0200, Thomas Zimmermann wrote: > Provide DRM_PLANE_NON_ATOMIC_FUNCS, which initializes plane functions > of non-atomic drivers to default values. The macro is not supposed to > be used in new code, but helps with documenting and finding existing > users. > > Signed-off-by: Thomas Zimmermann <tzimmermann@xxxxxxx> Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/drm_modeset_helper.c | 4 +--- > drivers/gpu/drm/nouveau/dispnv04/crtc.c | 4 +--- > include/drm/drm_plane_helper.h | 12 ++++++++++++ > 3 files changed, 14 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/drm_modeset_helper.c b/drivers/gpu/drm/drm_modeset_helper.c > index 38040eebfa16..f858dfedf2cf 100644 > --- a/drivers/gpu/drm/drm_modeset_helper.c > +++ b/drivers/gpu/drm/drm_modeset_helper.c > @@ -108,9 +108,7 @@ static const uint32_t safe_modeset_formats[] = { > }; > > static const struct drm_plane_funcs primary_plane_funcs = { > - .update_plane = drm_plane_helper_update_primary, > - .disable_plane = drm_plane_helper_disable_primary, > - .destroy = drm_plane_helper_destroy, > + DRM_PLANE_NON_ATOMIC_FUNCS, > }; > > /** > diff --git a/drivers/gpu/drm/nouveau/dispnv04/crtc.c b/drivers/gpu/drm/nouveau/dispnv04/crtc.c > index 6b8a014b5e97..ee92d576d277 100644 > --- a/drivers/gpu/drm/nouveau/dispnv04/crtc.c > +++ b/drivers/gpu/drm/nouveau/dispnv04/crtc.c > @@ -1276,9 +1276,7 @@ static const uint32_t modeset_formats[] = { > }; > > static const struct drm_plane_funcs nv04_primary_plane_funcs = { > - .update_plane = drm_plane_helper_update_primary, > - .disable_plane = drm_plane_helper_disable_primary, > - .destroy = drm_plane_helper_destroy, > + DRM_PLANE_NON_ATOMIC_FUNCS, > }; > > static int nv04_crtc_vblank_handler(struct nvif_notify *notify) > diff --git a/include/drm/drm_plane_helper.h b/include/drm/drm_plane_helper.h > index 1781fab24dd6..75f9c4830564 100644 > --- a/include/drm/drm_plane_helper.h > +++ b/include/drm/drm_plane_helper.h > @@ -42,4 +42,16 @@ int drm_plane_helper_disable_primary(struct drm_plane *plane, > struct drm_modeset_acquire_ctx *ctx); > void drm_plane_helper_destroy(struct drm_plane *plane); > > +/** > + * DRM_PLANE_NON_ATOMIC_FUNCS - Default plane functions for non-atomic drivers > + * > + * This macro initializes plane functions for non-atomic drivers to default > + * values. Non-atomic interfaces are deprecated and should not be used in new > + * drivers. I wonder if we could teach checkpath.pl to catch new users. Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > + */ > +#define DRM_PLANE_NON_ATOMIC_FUNCS \ > + .update_plane = drm_plane_helper_update_primary, \ > + .disable_plane = drm_plane_helper_disable_primary, \ > + .destroy = drm_plane_helper_destroy > + > #endif -- Regards, Laurent Pinchart