From: Ville Syrjälä Date: Thu, 22 Mar 2018 15:22:53 +0000 (+0200) Subject: drm: Clear crtc->primary->crtc when disabling the crtc via setcrtc() X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=7e7de761af2e4760cc5ad2968c37c2814317ede6;p=openwrt%2Fstaging%2Fblogic.git drm: Clear crtc->primary->crtc when disabling the crtc via setcrtc() Keep the primary->crtc in sync with the state->crtc (also with primary->fb and state->fb) when disabling the crtc (and thus also the primary) via setcrtc(). Signed-off-by: Ville Syrjälä Link: https://patchwork.freedesktop.org/patch/msgid/20180322152313.6561-4-ville.syrjala@linux.intel.com Reviewed-by: Daniel Vetter Reviewed-by: Maarten Lankhorst --- diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index 03583887cfec..7a973ada7195 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c @@ -471,7 +471,7 @@ static int __drm_mode_set_config_internal(struct drm_mode_set *set, ret = crtc->funcs->set_config(set, ctx); if (ret == 0) { - crtc->primary->crtc = crtc; + crtc->primary->crtc = fb ? crtc : NULL; crtc->primary->fb = fb; }