]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
drm/nouveau/kms/nv50-: flush mst disables together
authorBen Skeggs <bskeggs@redhat.com>
Tue, 19 Sep 2023 21:56:25 +0000 (17:56 -0400)
committerLyude Paul <lyude@redhat.com>
Tue, 19 Sep 2023 22:22:17 +0000 (18:22 -0400)
- fixes some issues tearing down modes on tiled displays

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Acked-by: Danilo Krummrich <me@dakr.org>
Signed-off-by: Lyude Paul <lyude@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230919220442.202488-31-lyude@redhat.com
drivers/gpu/drm/nouveau/dispnv50/disp.c
drivers/gpu/drm/nouveau/dispnv50/disp.h

index 48e099ed7d51c690a875d35e050fa2ecc5fabc3f..1fcd1b36a27517a1c3c810af0191d3b04f89cf7d 100644 (file)
@@ -2084,13 +2084,6 @@ nv50_disp_atomic_commit_tail(struct drm_atomic_state *state)
                        help->atomic_disable(encoder, state);
                        outp->disabled = true;
                        interlock[NV50_DISP_INTERLOCK_CORE] |= 1;
-                       if (outp->flush_disable) {
-                               nv50_disp_atomic_commit_wndw(state, interlock);
-                               nv50_disp_atomic_commit_core(state, interlock);
-                               memset(interlock, 0x00, sizeof(interlock));
-
-                               flushed = true;
-                       }
                }
        }
 
@@ -2376,10 +2369,8 @@ nv50_disp_outp_atomic_check_clr(struct nv50_atom *atom,
                        return PTR_ERR(outp);
 
                if (outp->encoder->encoder_type == DRM_MODE_ENCODER_DPMST ||
-                   nouveau_encoder(outp->encoder)->dcb->type == DCB_OUTPUT_DP) {
-                       outp->flush_disable = true;
+                   nouveau_encoder(outp->encoder)->dcb->type == DCB_OUTPUT_DP)
                        atom->flush_disable = true;
-               }
                outp->clr.ctrl = true;
                atom->lock_core = true;
        }
index 42209f5b06f918209f4c9432f3eaf6056f21b917..1e5601223c75376753d2f7517a6e66d116a449d3 100644 (file)
@@ -83,7 +83,6 @@ struct nv50_outp_atom {
        struct list_head head;
 
        struct drm_encoder *encoder;
-       bool flush_disable;
 
        bool disabled;
        bool enabled;