From: shihong.zheng Date: Wed, 19 Aug 2020 11:31:06 +0000 (+0800) Subject: mpeg12: fix vfifo data empty bug. [1/1] X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=157e49f64e286af3dd706cd857f7bd153b4a29fc;p=GitHub%2FLineageOS%2FG12%2Fandroid_hardware_amlogic_kernel-modules_media.git mpeg12: fix vfifo data empty bug. [1/1] PD#SWPL-31902 Problem: fix mpeg12 vfifo data empty status bug. Solution: consume current chunk and do not get more chunk for this run. Verify: ah212 Change-Id: I7c0eb7c7283937a4179246d5bce7ca8ad1d72893 Signed-off-by: shihong.zheng --- diff --git a/drivers/frame_provider/decoder/mpeg12/vmpeg12_multi.c b/drivers/frame_provider/decoder/mpeg12/vmpeg12_multi.c index ef45eb8..832e3c3 100644 --- a/drivers/frame_provider/decoder/mpeg12/vmpeg12_multi.c +++ b/drivers/frame_provider/decoder/mpeg12/vmpeg12_multi.c @@ -1894,14 +1894,8 @@ static irqreturn_t vmpeg12_isr_thread_fn(struct vdec_s *vdec, int irq) READ_VREG(VLD_MEM_VIFIFO_CONTROL), READ_VREG(VIFF_BIT_CNT)); if (vdec_frame_based(vdec)) { - u32 bitcnt = READ_VREG(VIFF_BIT_CNT); - if (bitcnt < 32) { - reset_process_time(hw); - hw->dec_result = DEC_RESULT_GET_DATA; - } else { - userdata_pushed_drop(hw); - hw->dec_result = DEC_RESULT_DONE; - } + userdata_pushed_drop(hw); + hw->dec_result = DEC_RESULT_DONE; vdec_schedule_work(&hw->work); } else { hw->dec_result = DEC_RESULT_AGAIN;