drm/i915/display: Check the old state to find port sync slave
authorJosé Roberto de Souza <jose.souza@intel.com>
Mon, 2 Dec 2019 22:25:11 +0000 (14:25 -0800)
committerJosé Roberto de Souza <jose.souza@intel.com>
Tue, 3 Dec 2019 20:32:47 +0000 (12:32 -0800)
If the CRTC is going from enabled to disabled and it is a port sync
slave, it needs to check to the old state to be disabled before the
port sync master.

Cc: Manasi Navare <manasi.d.navare@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191202222513.337777-1-jose.souza@intel.com
drivers/gpu/drm/i915/display/intel_display.c

index 947739f..c2161ce 100644 (file)
@@ -14497,8 +14497,8 @@ static void intel_commit_modeset_disables(struct intel_atomic_state *state)
                 * slave CRTCs are disabled first and then master CRTC since
                 * Slave vblanks are masked till Master Vblanks.
                 */
-               if (is_trans_port_sync_mode(new_crtc_state)) {
-                       if (is_trans_port_sync_master(new_crtc_state))
+               if (is_trans_port_sync_mode(old_crtc_state)) {
+                       if (is_trans_port_sync_master(old_crtc_state))
                                intel_trans_port_sync_modeset_disables(state,
                                                                       crtc,
                                                                       old_crtc_state,