diff options
author | Noralf Trønnes <noralf@tronnes.org> | 2019-03-26 20:55:46 +0300 |
---|---|---|
committer | Noralf Trønnes <noralf@tronnes.org> | 2019-04-03 12:09:45 +0300 |
commit | d7f9b83913f12b918906b8c1f4a4b90b5f4347d3 (patch) | |
tree | 2c1ed0457fb6b763331df6c25d4081fa35708d91 | |
parent | 65a102f68005891d7f39354cfd79099908df6d51 (diff) | |
download | linux-d7f9b83913f12b918906b8c1f4a4b90b5f4347d3.tar.xz |
drm/vc4: Call drm_dev_register() after all setup is done
drm_dev_register() initializes internal clients like bootsplash as the
last thing it does, so all setup needs to be done at this point.
Fix by calling vc4_kms_load() before registering.
Also check the error code returned from that function.
Cc: Eric Anholt <eric@anholt.net>
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Eric Anholt <eric@anholt.net>
Link: https://patchwork.freedesktop.org/patch/msgid/20190326175546.18126-17-noralf@tronnes.org
-rw-r--r-- | drivers/gpu/drm/vc4/vc4_drv.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/vc4/vc4_drv.c b/drivers/gpu/drm/vc4/vc4_drv.c index f2d0fb3aa729..8d56eb23c9b5 100644 --- a/drivers/gpu/drm/vc4/vc4_drv.c +++ b/drivers/gpu/drm/vc4/vc4_drv.c @@ -277,11 +277,13 @@ static int vc4_drm_bind(struct device *dev) drm_fb_helper_remove_conflicting_framebuffers(NULL, "vc4drmfb", false); - ret = drm_dev_register(drm, 0); + ret = vc4_kms_load(drm); if (ret < 0) goto unbind_all; - vc4_kms_load(drm); + ret = drm_dev_register(drm, 0); + if (ret < 0) + goto unbind_all; drm_fbdev_generic_setup(drm, 16); |