new_crtc_state->active_changed,
                        new_crtc_state->connectors_changed);
 
+               /* Disable cursor if disabling crtc */
+               if (old_crtc_state->active && !new_crtc_state->active) {
+                       struct dc_cursor_position position;
+
+                       memset(&position, 0, sizeof(position));
+                       mutex_lock(&dm->dc_lock);
+                       dc_stream_set_cursor_position(dm_old_crtc_state->stream, &position);
+                       mutex_unlock(&dm->dc_lock);
+               }
+
                /* Copy all transient state flags into dc state */
                if (dm_new_crtc_state->stream) {
                        amdgpu_dm_crtc_copy_transient_flags(&dm_new_crtc_state->base,