Skip to content

Commit

Permalink
drm/sun4i: call drm_vblank_init with correct number of crtcs
Browse files Browse the repository at this point in the history
If we want to have vblank on both pipelines at the same time, we need
to call drm_vblank_init with num_crtcs = 2.

Instead, since the crtc init calls correctly set mode_config.num_crtc,
we can move the drm_vblank_init call to after the crtc init code is
called, which is the component bind part. Then we can just pass
mode_config.num_crtc in.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20170908075016.18657-8-wens@csie.org
  • Loading branch information
Chen-Yu Tsai authored and Maxime Ripard committed Sep 9, 2017
1 parent 27e18de commit 070badf
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions drivers/gpu/drm/sun4i/sun4i_drv.c
Original file line number Diff line number Diff line change
Expand Up @@ -98,11 +98,6 @@ static int sun4i_drv_bind(struct device *dev)
goto free_drm;
}

/* drm_vblank_init calls kcalloc, which can fail */
ret = drm_vblank_init(drm, 1);
if (ret)
goto free_mem_region;

drm_mode_config_init(drm);

ret = component_bind_all(drm->dev, drm);
Expand All @@ -111,6 +106,11 @@ static int sun4i_drv_bind(struct device *dev)
goto cleanup_mode_config;
}

/* drm_vblank_init calls kcalloc, which can fail */
ret = drm_vblank_init(drm, drm->mode_config.num_crtc);
if (ret)
goto free_mem_region;

drm->irq_enabled = true;

/* Remove early framebuffers (ie. simplefb) */
Expand Down

0 comments on commit 070badf

Please sign in to comment.