On Tue, Dec 22, 2020 at 02:40:02PM +0100, Simon Ser wrote: > A driver must not set drm_crtc.cursor and any of the legacy funcs at the > same time, otherwise it's not clear which one DRM core should use for > legacy cursor updates. > > Signed-off-by: Simon Ser <contact@xxxxxxxxxxx> > Cc: Daniel Vetter <daniel@xxxxxxxx> Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx> > --- > drivers/gpu/drm/drm_mode_config.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/drivers/gpu/drm/drm_mode_config.c b/drivers/gpu/drm/drm_mode_config.c > index 9611f21bca00..92e56baf04ad 100644 > --- a/drivers/gpu/drm/drm_mode_config.c > +++ b/drivers/gpu/drm/drm_mode_config.c > @@ -645,6 +645,16 @@ void drm_mode_config_validate(struct drm_device *dev) > WARN(!crtc->primary, "Missing primary plane on [CRTC:%d:%s]\n", > crtc->base.id, crtc->name); > > + WARN(crtc->cursor && crtc->funcs->cursor_set, > + "[CRTC:%d:%s] must not have both a cursor plane and a cursor_set func", > + crtc->base.id, crtc->name); > + WARN(crtc->cursor && crtc->funcs->cursor_set2, > + "[CRTC:%d:%s] must not have both a cursor plane and a cursor_set2 func", > + crtc->base.id, crtc->name); > + WARN(crtc->cursor && crtc->funcs->cursor_move, > + "[CRTC:%d:%s] must not have both a cursor plane and a cursor_move func", > + crtc->base.id, crtc->name); > + > if (crtc->primary) { > WARN(!(crtc->primary->possible_crtcs & drm_crtc_mask(crtc)), > "Bogus primary plane possible_crtcs: [PLANE:%d:%s] must be compatible with [CRTC:%d:%s]\n", > -- > 2.29.2 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel