From cd77cb672d4a48574d69864f527b702541b48685 Mon Sep 17 00:00:00 2001 From: Nilaan Gunabalachandran Date: Tue, 18 May 2021 17:10:50 -0400 Subject: [PATCH] disp: msm: sde: fix indexing for frame data This change adds a fix to correct indexing logic while parsing frame data buffers and resets the count correctly. Change-Id: Ic5a20ecd7093423ea293432c9492eb920acdd6f4 Signed-off-by: Nilaan Gunabalachandran --- msm/sde/sde_crtc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/msm/sde/sde_crtc.c b/msm/sde/sde_crtc.c index ca0bf301a0..9f83a7bd98 100644 --- a/msm/sde/sde_crtc.c +++ b/msm/sde/sde_crtc.c @@ -2407,6 +2407,7 @@ exit: while (sde_crtc->frame_data.cnt--) _sde_crtc_put_frame_data_buffer( sde_crtc->frame_data.buf[sde_crtc->frame_data.cnt]); + sde_crtc->frame_data.cnt = 0; } static void _sde_crtc_frame_data_notify(struct drm_crtc *crtc, @@ -2448,7 +2449,7 @@ void sde_crtc_get_frame_data(struct drm_crtc *crtc) if (frame_data->cnt) { struct msm_gem_object *msm_gem; - msm_gem = to_msm_bo(frame_data->buf[frame_data->cnt]->gem); + msm_gem = to_msm_bo(frame_data->buf[frame_data->idx]->gem); data = (struct sde_drm_frame_data_packet *) (((u8 *)msm_gem->vaddr) + msm_gem->offset); } else {