Op 13-07-15 om 09:12 schreef Maarten Lankhorst: > Op 13-07-15 om 02:21 schreef John Hunter: >> From: Zhao Junwang <zhjwpku@xxxxxxxxx> >> >> Cc: Daniel Vetter <daniel.vetter@xxxxxxxx> >> Signed-off-by: Zhao Junwang <zhjwpku@xxxxxxxxx> >> --- >> drivers/gpu/drm/drm_atomic_helper.c | 55 +++++++++++++++++++++++++++++++++++ >> include/drm/drm_atomic_helper.h | 7 +++++ >> 2 files changed, 62 insertions(+) >> >> diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c >> index 536ae4d..3d94ff8 100644 >> --- a/drivers/gpu/drm/drm_atomic_helper.c >> +++ b/drivers/gpu/drm/drm_atomic_helper.c >> @@ -1336,6 +1336,61 @@ void drm_atomic_helper_swap_state(struct drm_device *dev, >> EXPORT_SYMBOL(drm_atomic_helper_swap_state); >> >> /** >> + * drm_atomic_helper_plane_check_update >> + * @plane: plane object to update > == plane_state->plane, so can be removed >> + * @state: drm plane state > rename to plane_state >> + * @min_scale: minimum @src:@dest scaling factor in 16.16 fixed point >> + * @max_scale: maximum @src:@dest scaling factor in 16.16 fixed point >> + * @can_position: is it legal to position the plane such that it >> + * doesn't cover the entire crtc? This will generally >> + * only be false for primary planes. >> + * @can_update_disabled: can the plane be updated while the crtc >> + * is disabled? >> + * > If you look carefully at drm_plane_helper_check_update, can_update_disabled will be a noop, > so remove this parameter. > > plane_state->crtc != NULL iff plane_state->fb != NULL > Oops, should check harder before I hit send. You can disable a crtc with planes attached, but the clip will be bogus in that case. When !crtc->enable the clip will be set { 0, 0, 0, 0 }, hiding the plane. There's still no need for can_update_disabled in the atomic world though, the plane state will be properly recalculated during a modeset. If you don't want to update a plane while a crtc is disabled, just don't update it in your commit function. _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel