diff options
Diffstat (limited to 'linux/drivers/media/video/cx18/cx18-fileops.c')
-rw-r--r-- | linux/drivers/media/video/cx18/cx18-fileops.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/linux/drivers/media/video/cx18/cx18-fileops.c b/linux/drivers/media/video/cx18/cx18-fileops.c index 6ef8a99aa..e884271b8 100644 --- a/linux/drivers/media/video/cx18/cx18-fileops.c +++ b/linux/drivers/media/video/cx18/cx18-fileops.c @@ -168,7 +168,8 @@ static void cx18_dualwatch(struct cx18 *cx) #if 0 static void cx18_update_pgm_info(struct cx18 *cx) { - u32 wr_idx = (read_enc(cx->pgm_info_offset) - cx->pgm_info_offset - 4) / 24; + u32 wr_idx = (cx18_read_enc(cx, cx->pgm_info_offset) + - cx->pgm_info_offset - 4) / 24; int cnt; int i = 0; @@ -183,13 +184,15 @@ static void cx18_update_pgm_info(struct cx18 *cx) u32 addr = cx->pgm_info_offset + 4 + idx * 24; const int mapping[] = { V4L2_ENC_IDX_FRAME_P, V4L2_ENC_IDX_FRAME_I, V4L2_ENC_IDX_FRAME_B, 0 }; - e->offset = read_enc(addr + 4) + ((u64)read_enc(addr + 8) << 32); + e->offset = cx18_read_enc(cx, addr + 4) + + ((u64)cx18_read_enc(cx, addr + 8) << 32); if (e->offset > cx->mpg_data_received) break; e->offset += cx->vbi_data_inserted; - e->length = read_enc(addr); - e->pts = read_enc(addr + 16) + ((u64)(read_enc(addr + 20) & 1) << 32); - e->flags = mapping[read_enc(addr + 12) & 3]; + e->length = cx18_read_enc(cx, addr); + e->pts = cx18_read_enc(cx, addr + 16) + + ((u64)(cx18_read_enc(cx, addr + 20) & 1) << 32); + e->flags = mapping[cx18_read_enc(cx, addr + 12) & 3]; i++; } cx->pgm_info_write_idx = (cx->pgm_info_write_idx + i) % cx->pgm_info_num; |