summaryrefslogtreecommitdiff
authorapollo.ling <apollo.ling@amlogic.com>2019-10-29 09:33:17 (GMT)
committer apollo.ling <apollo.ling@amlogic.com>2019-10-29 09:34:27 (GMT)
commitcd4249774427c80c1fb3e87299138c5efd4ee206 (patch)
treecc756074ab22909ee9c3bdb3de7825f3853728e4
parent0fb7e163d8876420ca6074308647b5d44be73e2b (diff)
downloadmedia_modules-cd4249774427c80c1fb3e87299138c5efd4ee206.zip
media_modules-cd4249774427c80c1fb3e87299138c5efd4ee206.tar.gz
media_modules-cd4249774427c80c1fb3e87299138c5efd4ee206.tar.bz2
vdec: improve timeout handling for vmmpeg12/vmmh264/vmmh265 [1/1]
supplementary commit. PD#SWPL-14196 Problem: {stress test} trunk crash and watchdog reboot happen when do DTV h264 2s channel switch and 15s suspend.(1/5,none) Solution: improve the timout handling mechanism Verify: X301 Change-Id: I7989ad2b015855d6cacec1c54e8e05d585c8934e Signed-off-by: apollo.ling <apollo.ling@amlogic.com>
Diffstat
-rw-r--r--drivers/frame_provider/decoder/h264_multi/h264_dpb.c4
-rw-r--r--drivers/frame_provider/decoder/h264_multi/vmh264.c7
2 files changed, 4 insertions, 7 deletions
diff --git a/drivers/frame_provider/decoder/h264_multi/h264_dpb.c b/drivers/frame_provider/decoder/h264_multi/h264_dpb.c
index 2b9a920..2258f75 100644
--- a/drivers/frame_provider/decoder/h264_multi/h264_dpb.c
+++ b/drivers/frame_provider/decoder/h264_multi/h264_dpb.c
@@ -202,7 +202,7 @@ void ref_pic_list_reordering(struct h264_dpb_stru *p_H264_Dpb,
*/
i >= REORDERING_COMMAND_MAX_SIZE) {
dpb_print(p_H264_Dpb->decoder_index,
- PRINT_FLAG_ERROR,
+ PRINT_FLAG_DPB_DETAIL,
"%s error %d %d\n",
__func__, i,
currSlice->
@@ -300,7 +300,7 @@ void ref_pic_list_reordering(struct h264_dpb_stru *p_H264_Dpb,
/*i>currSlice->num_ref_idx_active[LIST_1] || */
i >= REORDERING_COMMAND_MAX_SIZE) {
dpb_print(p_H264_Dpb->decoder_index,
- PRINT_FLAG_ERROR,
+ PRINT_FLAG_DPB_DETAIL,
"%s error %d %d\n",
__func__, i,
currSlice->
diff --git a/drivers/frame_provider/decoder/h264_multi/vmh264.c b/drivers/frame_provider/decoder/h264_multi/vmh264.c
index 5c90898..f34097c 100644
--- a/drivers/frame_provider/decoder/h264_multi/vmh264.c
+++ b/drivers/frame_provider/decoder/h264_multi/vmh264.c
@@ -5355,11 +5355,8 @@ static irqreturn_t vh264_isr_thread_fn(struct vdec_s *vdec, int irq)
debug_tag = tenth_ns - hw->tfn_ns;
hw->tfn_cnt = 1;
hw->tfn_cnt = tenth_ns;
- if (debug_tag <= 10000000) {
- pr_err("Within 10ms 10 vh264_isr_thread_fn. Abnormal!\n");
- timeout_process(hw);
- return IRQ_HANDLED;
- }
+ if (debug_tag <= 10000000)
+ pr_err("Within 10ms 10 vh264_isr_thread_fn!\n");
}
if (dec_dpb_status == H264_CONFIG_REQUEST) {