On Thu, Oct 15, 2020 at 11:33:08AM +1000, Dave Airlie wrote:
>       drm/nouveau/kms: Search for encoders' connectors properly

This commit (09838c4efe9a) broke boot for me. These two hunks in
particular:

@ -2066,7 +2120,7 @@ nv50_disp_atomic_commit_tail(struct drm_atomic_state 
*state)
                          outp->clr.mask, outp->set.mask);

                if (outp->clr.mask) {
-                       help->disable(encoder);
+                       help->atomic_disable(encoder, state);
                        interlock[NV50_DISP_INTERLOCK_CORE] |= 1;
                        if (outp->flush_disable) {
                                nv50_disp_atomic_commit_wndw(state, interlock);
@@ -2105,7 +2159,7 @@ nv50_disp_atomic_commit_tail(struct drm_atomic_state 
*state)
                          outp->set.mask, outp->clr.mask);

                if (outp->set.mask) {
-                       help->enable(encoder);
+                       help->atomic_enable(encoder, state);
                        interlock[NV50_DISP_INTERLOCK_CORE] = 1;
                }


I hacked up patch to use help->disable/help->enable if atomic_ versions
are NULL. It worked.

In my setup I stepped onto nv50_msto_help->atomic_enable == NULL. But
there are two more drm_encoder_helper_funcs in dispnv50/disp.c that don't
have atomic_enable/disable set: nv50_dac_help, nv50_pior_help.

-- 
 Kirill A. Shutemov

Reply via email to