aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/platform/davinci
diff options
context:
space:
mode:
authorSakari Ailus <sakari.ailus@iki.fi>2012-09-15 14:14:42 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-12-21 07:56:43 -0500
commit8e6057b510aad354e017c6dfca7f386a0eb91b63 (patch)
treeac76cc2593f255325972f05bde025954f2d3b41c /drivers/media/platform/davinci
parentabd23295648a9e3ae72a806e70a510d3dcd8b374 (diff)
[media] v4l: Convert drivers to use monotonic timestamps
Convert drivers using wall clock time (CLOCK_REALTIME) to timestamp from the monotonic timer (CLOCK_MONOTONIC). Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi> Acked-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/platform/davinci')
-rw-r--r--drivers/media/platform/davinci/vpfe_capture.c5
-rw-r--r--drivers/media/platform/davinci/vpif_capture.c2
-rw-r--r--drivers/media/platform/davinci/vpif_display.c6
3 files changed, 5 insertions, 8 deletions
diff --git a/drivers/media/platform/davinci/vpfe_capture.c b/drivers/media/platform/davinci/vpfe_capture.c
index 8be492cd8ed4..65f4264bd5b4 100644
--- a/drivers/media/platform/davinci/vpfe_capture.c
+++ b/drivers/media/platform/davinci/vpfe_capture.c
@@ -560,10 +560,7 @@ static void vpfe_schedule_bottom_field(struct vpfe_device *vpfe_dev)
560 560
561static void vpfe_process_buffer_complete(struct vpfe_device *vpfe_dev) 561static void vpfe_process_buffer_complete(struct vpfe_device *vpfe_dev)
562{ 562{
563 struct timeval timevalue; 563 v4l2_get_timestamp(&vpfe_dev->cur_frm->ts);
564
565 do_gettimeofday(&timevalue);
566 vpfe_dev->cur_frm->ts = timevalue;
567 vpfe_dev->cur_frm->state = VIDEOBUF_DONE; 564 vpfe_dev->cur_frm->state = VIDEOBUF_DONE;
568 vpfe_dev->cur_frm->size = vpfe_dev->fmt.fmt.pix.sizeimage; 565 vpfe_dev->cur_frm->size = vpfe_dev->fmt.fmt.pix.sizeimage;
569 wake_up_interruptible(&vpfe_dev->cur_frm->done); 566 wake_up_interruptible(&vpfe_dev->cur_frm->done);
diff --git a/drivers/media/platform/davinci/vpif_capture.c b/drivers/media/platform/davinci/vpif_capture.c
index a409ccefb380..5892d2bc8eee 100644
--- a/drivers/media/platform/davinci/vpif_capture.c
+++ b/drivers/media/platform/davinci/vpif_capture.c
@@ -411,7 +411,7 @@ static struct vb2_ops video_qops = {
411 */ 411 */
412static void vpif_process_buffer_complete(struct common_obj *common) 412static void vpif_process_buffer_complete(struct common_obj *common)
413{ 413{
414 do_gettimeofday(&common->cur_frm->vb.v4l2_buf.timestamp); 414 v4l2_get_timestamp(&common->cur_frm->vb.v4l2_buf.timestamp);
415 vb2_buffer_done(&common->cur_frm->vb, 415 vb2_buffer_done(&common->cur_frm->vb,
416 VB2_BUF_STATE_DONE); 416 VB2_BUF_STATE_DONE);
417 /* Make curFrm pointing to nextFrm */ 417 /* Make curFrm pointing to nextFrm */
diff --git a/drivers/media/platform/davinci/vpif_display.c b/drivers/media/platform/davinci/vpif_display.c
index 9f2b603be9c9..dd249c96126d 100644
--- a/drivers/media/platform/davinci/vpif_display.c
+++ b/drivers/media/platform/davinci/vpif_display.c
@@ -402,7 +402,7 @@ static void process_interlaced_mode(int fid, struct common_obj *common)
402 /* one frame is displayed If next frame is 402 /* one frame is displayed If next frame is
403 * available, release cur_frm and move on */ 403 * available, release cur_frm and move on */
404 /* Copy frame display time */ 404 /* Copy frame display time */
405 do_gettimeofday(&common->cur_frm->vb.v4l2_buf.timestamp); 405 v4l2_get_timestamp(&common->cur_frm->vb.v4l2_buf.timestamp);
406 /* Change status of the cur_frm */ 406 /* Change status of the cur_frm */
407 vb2_buffer_done(&common->cur_frm->vb, 407 vb2_buffer_done(&common->cur_frm->vb,
408 VB2_BUF_STATE_DONE); 408 VB2_BUF_STATE_DONE);
@@ -462,8 +462,8 @@ static irqreturn_t vpif_channel_isr(int irq, void *dev_id)
462 if (!channel_first_int[i][channel_id]) { 462 if (!channel_first_int[i][channel_id]) {
463 /* Mark status of the cur_frm to 463 /* Mark status of the cur_frm to
464 * done and unlock semaphore on it */ 464 * done and unlock semaphore on it */
465 do_gettimeofday(&common->cur_frm->vb. 465 v4l2_get_timestamp(&common->cur_frm->vb.
466 v4l2_buf.timestamp); 466 v4l2_buf.timestamp);
467 vb2_buffer_done(&common->cur_frm->vb, 467 vb2_buffer_done(&common->cur_frm->vb,
468 VB2_BUF_STATE_DONE); 468 VB2_BUF_STATE_DONE);
469 /* Make cur_frm pointing to next_frm */ 469 /* Make cur_frm pointing to next_frm */