mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-11 05:17:10 +09:00
avs : fix omx+avs seek problem [3/12]
PD# 147955 fix omx+avs seek problem (cherry picked from commit 215eb370a2d0e33fb03cc36eba9a6ad251c8e893) Change-Id: I1973d0f55f69a8ecb96c8ab40369e0ce321294eb
This commit is contained in:
@@ -409,6 +409,7 @@ static void vavs_isr(void)
|
||||
u32 picture_type;
|
||||
u32 buffer_index;
|
||||
u32 picture_struct;
|
||||
u64 pts_us64;
|
||||
unsigned int pts, pts_valid = 0, offset;
|
||||
if (debug_flag & AVS_DEBUG_UCODE) {
|
||||
if (READ_VREG(AV_SCRATCH_E) != 0) {
|
||||
@@ -440,8 +441,8 @@ static void vavs_isr(void)
|
||||
offset = READ_VREG(AVS_OFFSET_REG);
|
||||
if (debug_flag & AVS_DEBUG_PRINT)
|
||||
pr_info("AVS OFFSET=%x\n", offset);
|
||||
if (pts_lookup_offset(PTS_TYPE_VIDEO, offset, &pts, 0)
|
||||
== 0) {
|
||||
if (pts_lookup_offset_us64(PTS_TYPE_VIDEO, offset, &pts,
|
||||
0, &pts_us64) == 0) {
|
||||
pts_valid = 1;
|
||||
#ifdef DEBUG_PTS
|
||||
pts_hit++;
|
||||
@@ -541,7 +542,7 @@ static void vavs_isr(void)
|
||||
vf->canvas0Addr = vf->canvas1Addr =
|
||||
index2canvas(buffer_index);
|
||||
vf->type_original = vf->type;
|
||||
|
||||
vf->pts_us64 = (pts_valid) ? pts_us64 : 0;
|
||||
if (debug_flag & AVS_DEBUG_PRINT) {
|
||||
pr_info("buffer_index %d, canvas addr %x\n",
|
||||
buffer_index, vf->canvas0Addr);
|
||||
@@ -595,6 +596,7 @@ static void vavs_isr(void)
|
||||
vf->canvas0Addr = vf->canvas1Addr =
|
||||
index2canvas(buffer_index);
|
||||
vf->type_original = vf->type;
|
||||
vf->pts_us64 = (pts_valid) ? pts_us64 : 0;
|
||||
vfbuf_use[buffer_index]++;
|
||||
vf->mem_handle =
|
||||
decoder_bmmu_box_get_mem_handle(
|
||||
|
||||
Reference in New Issue
Block a user