We move drm_kms_helper_poll_init behind the drm_fbdev_cma_init so the
set_par will be called and fb will be active.

Signed-off-by: Michael Grzeschik <m.grzesc...@pengutronix.de>
---
 drivers/gpu/drm/mxsfb/mxsfb_drv.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.c 
b/drivers/gpu/drm/mxsfb/mxsfb_drv.c
index 1207ffe362505..a047a729af6b8 100644
--- a/drivers/gpu/drm/mxsfb/mxsfb_drv.c
+++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.c
@@ -94,6 +94,7 @@ void mxsfb_disable_axi_clk(struct mxsfb_drm_private *mxsfb)
 
 static const struct drm_mode_config_funcs mxsfb_mode_config_funcs = {
        .fb_create              = drm_gem_fb_create,
+       .output_poll_changed    = drm_fb_helper_output_poll_changed,
        .atomic_check           = drm_atomic_helper_check,
        .atomic_commit          = drm_atomic_helper_commit,
 };
@@ -221,8 +222,6 @@ static int mxsfb_load(struct drm_device *drm, unsigned long 
flags)
                goto err_irq;
        }
 
-       drm_kms_helper_poll_init(drm);
-
        mxsfb->fbdev = drm_fbdev_cma_init(drm, 32,
                                          drm->mode_config.num_connector);
        if (IS_ERR(mxsfb->fbdev)) {
@@ -232,6 +231,8 @@ static int mxsfb_load(struct drm_device *drm, unsigned long 
flags)
                goto err_cma;
        }
 
+       drm_kms_helper_poll_init(drm);
+
        platform_set_drvdata(pdev, drm);
 
        drm_helper_hpd_irq_event(drm);
-- 
2.16.1

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

Reply via email to