diff options
| author | Sylwester Nawrocki <s.nawrocki@samsung.com> | 2011-03-11 10:33:44 -0500 |
|---|---|---|
| committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-04-19 15:02:00 -0400 |
| commit | 89582654ee3d1d76e153212c88daa6aa6c024fec (patch) | |
| tree | 48d7d5a1294a15bfb2800cef225f1d38083022b3 | |
| parent | 045030fa16648449b416d4fc8dcc54bfefd6f4aa (diff) | |
[media] s5p-fimc: Add support for the buffer timestamps and sequence
Add support for buffer timestamps and the sequence number in
the video capture driver.
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
| -rw-r--r-- | drivers/media/video/s5p-fimc/fimc-core.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/media/video/s5p-fimc/fimc-core.c b/drivers/media/video/s5p-fimc/fimc-core.c index ef4e3f66eac..dc91a8511af 100644 --- a/drivers/media/video/s5p-fimc/fimc-core.c +++ b/drivers/media/video/s5p-fimc/fimc-core.c | |||
| @@ -361,10 +361,20 @@ static void fimc_capture_irq_handler(struct fimc_dev *fimc) | |||
| 361 | { | 361 | { |
| 362 | struct fimc_vid_cap *cap = &fimc->vid_cap; | 362 | struct fimc_vid_cap *cap = &fimc->vid_cap; |
| 363 | struct fimc_vid_buffer *v_buf; | 363 | struct fimc_vid_buffer *v_buf; |
| 364 | struct timeval *tv; | ||
| 365 | struct timespec ts; | ||
| 364 | 366 | ||
| 365 | if (!list_empty(&cap->active_buf_q) && | 367 | if (!list_empty(&cap->active_buf_q) && |
| 366 | test_bit(ST_CAPT_RUN, &fimc->state)) { | 368 | test_bit(ST_CAPT_RUN, &fimc->state)) { |
| 369 | ktime_get_real_ts(&ts); | ||
| 370 | |||
| 367 | v_buf = active_queue_pop(cap); | 371 | v_buf = active_queue_pop(cap); |
| 372 | |||
| 373 | tv = &v_buf->vb.v4l2_buf.timestamp; | ||
| 374 | tv->tv_sec = ts.tv_sec; | ||
| 375 | tv->tv_usec = ts.tv_nsec / NSEC_PER_USEC; | ||
| 376 | v_buf->vb.v4l2_buf.sequence = cap->frame_count++; | ||
| 377 | |||
| 368 | vb2_buffer_done(&v_buf->vb, VB2_BUF_STATE_DONE); | 378 | vb2_buffer_done(&v_buf->vb, VB2_BUF_STATE_DONE); |
| 369 | } | 379 | } |
| 370 | 380 | ||
