Commit 5bbb71cd authored by Pi-Hsun Shih's avatar Pi-Hsun Shih Committed by CK Hu
Browse files

drm/mediatek: Check return value of mtk_drm_ddp_comp_for_plane.



The mtk_drm_ddp_comp_for_plane can return NULL, but the usage doesn't
check for it. Add check for it.

Fixes: d6b53f68 ("drm/mediatek: Add helper to get component for a plane")
Signed-off-by: default avatarPi-Hsun Shih <pihsun@chromium.org>
Signed-off-by: default avatarCK Hu <ck.hu@mediatek.com>
parent e42617b8
Loading
Loading
Loading
Loading
+9 −4
Original line number Original line Diff line number Diff line
@@ -310,7 +310,9 @@ static int mtk_crtc_ddp_hw_init(struct mtk_drm_crtc *mtk_crtc)


		plane_state = to_mtk_plane_state(plane->state);
		plane_state = to_mtk_plane_state(plane->state);
		comp = mtk_drm_ddp_comp_for_plane(crtc, plane, &local_layer);
		comp = mtk_drm_ddp_comp_for_plane(crtc, plane, &local_layer);
		mtk_ddp_comp_layer_config(comp, local_layer, plane_state);
		if (comp)
			mtk_ddp_comp_layer_config(comp, local_layer,
						  plane_state);
	}
	}


	return 0;
	return 0;
@@ -386,6 +388,7 @@ static void mtk_crtc_ddp_config(struct drm_crtc *crtc)
			comp = mtk_drm_ddp_comp_for_plane(crtc, plane,
			comp = mtk_drm_ddp_comp_for_plane(crtc, plane,
							  &local_layer);
							  &local_layer);


			if (comp)
				mtk_ddp_comp_layer_config(comp, local_layer,
				mtk_ddp_comp_layer_config(comp, local_layer,
							  plane_state);
							  plane_state);
			plane_state->pending.config = false;
			plane_state->pending.config = false;
@@ -401,7 +404,9 @@ int mtk_drm_crtc_plane_check(struct drm_crtc *crtc, struct drm_plane *plane,
	struct mtk_ddp_comp *comp;
	struct mtk_ddp_comp *comp;


	comp = mtk_drm_ddp_comp_for_plane(crtc, plane, &local_layer);
	comp = mtk_drm_ddp_comp_for_plane(crtc, plane, &local_layer);
	if (comp)
		return mtk_ddp_comp_layer_check(comp, local_layer, state);
		return mtk_ddp_comp_layer_check(comp, local_layer, state);
	return 0;
}
}


static void mtk_drm_crtc_atomic_enable(struct drm_crtc *crtc,
static void mtk_drm_crtc_atomic_enable(struct drm_crtc *crtc,