On Mon, Jan 18, 2021 at 6:44 PM Fabio Estevam <feste...@gmail.com> wrote:
>
> Adding some more folks in case anyone has any suggestions to fix this
> reboot hang.

Not sure if this is a valid fix, but the change below makes reboot
works correctly.

kmscube still works.

--- a/drivers/gpu/drm/msm/msm_atomic.c
+++ b/drivers/gpu/drm/msm/msm_atomic.c
@@ -207,8 +207,12 @@ void msm_atomic_commit_tail(struct drm_atomic_state *state)
        struct msm_kms *kms = priv->kms;
        struct drm_crtc *async_crtc = NULL;
        unsigned crtc_mask = get_crtc_mask(state);
-       bool async = kms->funcs->vsync_time &&
-                       can_do_async(state, &async_crtc);
+       bool async;
+
+       if (!kms)
+               return;
+
+       async = kms->funcs->vsync_time && can_do_async(state, &async_crtc);

        trace_msm_atomic_commit_tail_start(async, crtc_mask);

Any comments?

Thanks
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to