media: uvcvideo: Fixed ktime_t to ns conversion
authorJasmin Jessich <jasmin@anw.at>
Sun, 14 Jan 2018 10:21:43 +0000 (05:21 -0500)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 23 Feb 2018 07:24:29 +0000 (02:24 -0500)
Commit 828ee8c71950 ("media: uvcvideo: Use ktime_t for timestamps")
changed to use ktime_t for timestamps. Older Kernels use a struct for
ktime_t, which requires the conversion function ktime_to_ns to be used on
some places. With this patch it will compile now also for older Kernel
versions.

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/usb/uvc/uvc_video.c

index 2ddb1367e195835436d844d51c4411a90afde424..aa0082fe58331b4d21be0667ecd5b0de22a7a63e 100644 (file)
@@ -1009,7 +1009,7 @@ static int uvc_video_decode_start(struct uvc_streaming *stream,
 
                buf->buf.field = V4L2_FIELD_NONE;
                buf->buf.sequence = stream->sequence;
-               buf->buf.vb2_buf.timestamp = uvc_video_get_time();
+               buf->buf.vb2_buf.timestamp = ktime_to_ns(uvc_video_get_time());
 
                /* TODO: Handle PTS and SCR. */
                buf->state = UVC_BUF_STATE_ACTIVE;
@@ -1191,7 +1191,8 @@ static void uvc_video_decode_meta(struct uvc_streaming *stream,
 
        uvc_trace(UVC_TRACE_FRAME,
                  "%s(): t-sys %lluns, SOF %u, len %u, flags 0x%x, PTS %u, STC %u frame SOF %u\n",
-                 __func__, time, meta->sof, meta->length, meta->flags,
+                 __func__, ktime_to_ns(time), meta->sof, meta->length,
+                 meta->flags,
                  has_pts ? *(u32 *)meta->buf : 0,
                  has_scr ? *(u32 *)scr : 0,
                  has_scr ? *(u32 *)(scr + 4) & 0x7ff : 0);