Messages in this thread Patch in this message | | | From | Liu Ying <> | Subject | [PATCH v2] drm/imx: ipuv3-crtc: Return error if ipu_plane_init() fails for primary plane | Date | Fri, 6 Nov 2015 22:42:45 +0800 |
| |
For primary plane initialization failure cases, ipu_plane_init() may return a pointer encoded by ERR_PTR(). So, we should bailout instead of using that pointer blindly.
Signed-off-by: Liu Ying <Ying.Liu@freescale.com> --- v1->v2: * Trivial commit message fix. * Rebase onto Phillip's patch[1]. [1] http://www.spinics.net/lists/dri-devel/msg93700.html
drivers/gpu/drm/imx/ipuv3-crtc.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c index 872183a..35a77e5 100644 --- a/drivers/gpu/drm/imx/ipuv3-crtc.c +++ b/drivers/gpu/drm/imx/ipuv3-crtc.c @@ -361,6 +361,10 @@ static int ipu_crtc_init(struct ipu_crtc *ipu_crtc, dp = IPU_DP_FLOW_SYNC_BG; ipu_crtc->plane[0] = ipu_plane_init(drm, ipu, pdata->dma[0], dp, 0, DRM_PLANE_TYPE_PRIMARY); + if (IS_ERR(ipu_crtc->plane[0])) { + ret = PTR_ERR(ipu_crtc->plane[0]); + goto err_put_resources; + } ret = imx_drm_add_crtc(drm, &ipu_crtc->base, &ipu_crtc->imx_crtc, &ipu_crtc->plane[0]->base, &ipu_crtc_helper_funcs, -- 2.5.0
| |