From ab176f555ae12fcf39a1a5cef0e46d93b2d23d48 Mon Sep 17 00:00:00 2001 From: Algea Cao Date: Thu, 27 Jan 2022 10:30:28 +0800 Subject: [PATCH] drm/rockchip: dw_hdmi: Only clear output interface flag when hdmi disable Signed-off-by: Algea Cao Change-Id: I19bf8a9e8de541b7a9b4f30421b7d9a5d75ae00c --- drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c index 8228a6657982..517054fdd32f 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -191,7 +191,6 @@ struct rockchip_hdmi { bool unsupported_yuv_input; bool unsupported_deep_color; bool skip_check_420_mode; - bool mode_changed; u8 force_output; u8 id; bool hpd_stat; @@ -1502,7 +1501,7 @@ static void dw_hdmi_rockchip_encoder_disable(struct drm_encoder *encoder) struct drm_crtc *crtc = encoder->crtc; struct rockchip_crtc_state *s = to_rockchip_crtc_state(crtc->state); - if (!hdmi->mode_changed) { + if (crtc->state->active_changed) { if (!hdmi->id) s->output_if &= ~VOP_OUTPUT_IF_HDMI0; else @@ -1963,8 +1962,6 @@ dw_hdmi_rockchip_encoder_atomic_check(struct drm_encoder *encoder, s->output_mode = output_mode; hdmi->bus_format = s->bus_format; - hdmi->mode_changed = crtc_state->mode_changed; - if (hdmi->enc_out_encoding == V4L2_YCBCR_ENC_BT2020) s->color_space = V4L2_COLORSPACE_BT2020; else if (colorformat == DRM_HDMI_OUTPUT_DEFAULT_RGB)