Tested-by: Meng Yi <meng.yi at nxp.com> -----é®ä»¶åä»¶----- å件人: Dongsheng Wang [mailto:Dongsheng.Wang at freescale.com] åéæ¶é´: Tuesday, December 01, 2015 4:16 PM æ¶ä»¶äºº: airlied at linux.ie æé: stefan at agner.ch; dri-devel at lists.freedesktop.org; Jianwei Wang <jianwei.wang.chn at gmail.com>; Yi Meng-B56799 <B56799 at freescale.com>; Wang Dongsheng-B40534 <Dongsheng.Wang at freescale.com> 主é¢: [RESEND 1/3] drm: fsl-dcu: Fix no fb check bug
From: Jianwei Wang <jianwei.wang....@gmail.com> For state->fb may be NULL in fsl_dcu_drm_plane_atomic_check function, if so, return -EINVAL. No need check in fsl_dcu_drm_plane_atomic_update anymore. Signed-off-by: Jianwei Wang <jianwei.wang.chn at gmail.com> Signed-off-by: Yi Meng <b56799 at freescale.com> Signed-off-by: Wang Dongsheng <dongsheng.wang at freescale.com> Tested-by: Stefan Agner <stefan at agner.ch> diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c index 51daaea..a8932a8 100644 --- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c +++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c @@ -41,6 +41,9 @@ static int fsl_dcu_drm_plane_atomic_check(struct drm_plane *plane, { struct drm_framebuffer *fb = state->fb; + if (!fb) + return -EINVAL; + switch (fb->pixel_format) { case DRM_FORMAT_RGB565: case DRM_FORMAT_RGB888: @@ -85,9 +88,6 @@ static void fsl_dcu_drm_plane_atomic_update(struct drm_plane *plane, unsigned int alpha, bpp; int index, ret; - if (!fb) - return; - index = fsl_dcu_drm_plane_index(plane); if (index < 0) return; -- 2.1.0.27.g96db324