From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_SANE_2 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 79FB7C33CA2 for ; Fri, 10 Jan 2020 10:08:45 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4B9D72072A for ; Fri, 10 Jan 2020 10:08:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="qt/CYh+5"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="q7++ne3A" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4B9D72072A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Date:To:From:Subject:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=UYkFMZ2I8F8N5cDfr8XiCvHjjGNy+7Kn0YKlJX81AKg=; b=qt/CYh+5z/0WKG nh+BApoGGhHbLtR08ZswVsOLUdYh9vfgJwks78BwOAISmX3otbzITHeXcqOETTer7OUk+wmtavZQ5 R7GBTsEyqXFQc2y7uE9DRNs4A5jexwamhJuuq/WpKv3BWLn1o4KDuBGCYtXjUY+xJ7moGxW3Jg9Gm BWgK9mtG/lYiIsR5FvkblnzdFtmzK50RkUuKcCc1qirtOOCIY6XzWXzZawnvbSZcBRGILRcvaIaui EQ21mRUM7He/lfENjSKFX/6OAbCFZXkUAQf4/cdzRmqv83AZSBsBW15cmUo3/qs2gVYP2JFk6so7I +dGFH8HETfnfYbjt7I3Q==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1iprDX-0005kX-FR; Fri, 10 Jan 2020 10:08:35 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1iprDL-0005aa-99; Fri, 10 Jan 2020 10:08:24 +0000 X-UUID: 5dd8b50e51b747a8812a05ececdc82aa-20200110 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=FYP5p0wxJ3QFwXLMGPYrw3vhC17+4GD5PVgVtXVVOhQ=; b=q7++ne3AnzWXWNTq4xNmouj5aa2eDIdlw9sI08/AJ9rMRXmfJLWQPH7JNajbssaEgwEInkfipZG1OEArM7j0VrO1/CGzQMcXpfHV7zAsvIzJee/zsfMX4SgzOmBN5TXLN1ngB2npMiEzvkyKPmwgO6F6tcri2K125pg+ug/bR9s=; X-UUID: 5dd8b50e51b747a8812a05ececdc82aa-20200110 Received: from mtkcas66.mediatek.inc [(172.29.193.44)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 22888282; Fri, 10 Jan 2020 02:08:18 -0800 Received: from mtkmbs07n1.mediatek.inc (172.21.101.16) by MTKMBS62N1.mediatek.inc (172.29.193.41) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 10 Jan 2020 02:08:57 -0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by mtkmbs07n1.mediatek.inc (172.21.101.16) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 10 Jan 2020 18:07:49 +0800 Received: from [172.21.84.99] (172.21.84.99) by mtkcas09.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Fri, 10 Jan 2020 18:08:54 +0800 Message-ID: <1578650895.3348.18.camel@mtksdccf07> Subject: Re: [v6, 3/5] media: videodev2.h: Add new boottime timestamp type From: Jungo Lin To: Hans Verkuil Date: Fri, 10 Jan 2020 18:08:15 +0800 In-Reply-To: <081d7d77-2bf7-0fc2-60ea-8ba8faa5b6af@xs4all.nl> References: <20191219054930.29513-1-jungo.lin@mediatek.com> <20191219054930.29513-4-jungo.lin@mediatek.com> <081d7d77-2bf7-0fc2-60ea-8ba8faa5b6af@xs4all.nl> X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200110_020823_328292_C0561539 X-CRM114-Status: GOOD ( 19.89 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: ryan.yu@mediatek.com, frankie.chiu@mediatek.com, laurent.pinchart@ideasonboard.com, robh@kernel.org, Rynn.Wu@mediatek.com, suleiman@chromium.org, Jerry-ch.Chen@mediatek.com, frederic.chen@mediatek.com, linux-media@vger.kernel.org, devicetree@vger.kernel.org, shik@chromium.org, yuzhao@chromium.org, linux-mediatek@lists.infradead.org, matthias.bgg@gmail.com, mchehab@kernel.org, linux-arm-kernel@lists.infradead.org, Sean.Cheng@mediatek.com, srv_heupstream@mediatek.com, sj.huang@mediatek.com, tfiga@chromium.org, zwisler@chromium.org, ddavenport@chromium.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Hi Hans: Appreciate your comments on this patch. On Tue, 2020-01-07 at 15:10 +0100, Hans Verkuil wrote: > On 12/19/19 6:49 AM, Jungo Lin wrote: > > For Camera AR(Augmented Reality) application requires camera timestamps > > to be reported with CLOCK_BOOTTIME to sync timestamp with other sensor > > sources. > > > > The boottime timestamp is identical to monotonic timestamp, > > except it also includes any time that the system is suspended. > > > > Signed-off-by: Jungo Lin > > --- > > Changes from v6: > > - No change. > > --- > > Documentation/media/uapi/v4l/buffer.rst | 11 ++++++++++- > > include/uapi/linux/videodev2.h | 2 ++ > > 2 files changed, 12 insertions(+), 1 deletion(-) > > > > diff --git a/Documentation/media/uapi/v4l/buffer.rst b/Documentation/media/uapi/v4l/buffer.rst > > index 9149b57728e5..f45bfce7fddd 100644 > > --- a/Documentation/media/uapi/v4l/buffer.rst > > +++ b/Documentation/media/uapi/v4l/buffer.rst > > @@ -662,13 +662,22 @@ Buffer Flags > > - 0x00002000 > > - The buffer timestamp has been taken from the ``CLOCK_MONOTONIC`` > > clock. To access the same clock outside V4L2, use > > - :c:func:`clock_gettime`. > > + :c:func:`clock_gettime` using clock IDs ``CLOCK_MONOTONIC``. > > IDs -> ID > Ok, fix in next version. > > * .. _`V4L2-BUF-FLAG-TIMESTAMP-COPY`: > > > > - ``V4L2_BUF_FLAG_TIMESTAMP_COPY`` > > - 0x00004000 > > - The CAPTURE buffer timestamp has been taken from the corresponding > > OUTPUT buffer. This flag applies only to mem2mem devices. > > + * .. _`V4L2_BUF_FLAG_TIMESTAMP_BOOTIME`: > > You mistyped BOOTTIME as BOOTIME in a lot of places. Please check. > Ok, fix this typo in next version. > > + > > + - ``V4L2_BUF_FLAG_TIMESTAMP_BOOTIME`` > > + - 0x00008000 > > + - The buffer timestamp has been taken from the ``CLOCK_BOOTTIME`` > > + clock. To access the same clock outside V4L2, use > > + :c:func:`clock_gettime` using clock IDs ``CLOCK_BOOTTIME``. > > IDs -> ID > Ditto. > > + Identical to CLOCK_MONOTONIC, except it also includes any time that > > + the system is suspended. > > * .. _`V4L2-BUF-FLAG-TSTAMP-SRC-MASK`: > > > > - ``V4L2_BUF_FLAG_TSTAMP_SRC_MASK`` > > diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h > > index 04481c717fee..74ef9472e702 100644 > > --- a/include/uapi/linux/videodev2.h > > +++ b/include/uapi/linux/videodev2.h > > @@ -1060,6 +1060,8 @@ static inline __u64 v4l2_timeval_to_ns(const struct timeval *tv) > > #define V4L2_BUF_FLAG_TIMESTAMP_UNKNOWN 0x00000000 > > #define V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC 0x00002000 > > #define V4L2_BUF_FLAG_TIMESTAMP_COPY 0x00004000 > > +#define V4L2_BUF_FLAG_TIMESTAMP_BOOTIME 0x00008000 > > This should be 0x00006000. > > (flags & V4L2_BUF_FLAG_TIMESTAMP_MASK) is a value that determines the timestamp > source, so these timestamp defines are values, not bitmasks. > > However, I don't like your approach. Whether to use MONOTONIC or BOOTTIME is really > a userspace decision, and locking a driver to one of these two options seems > wrong to me. > > Instead add new V4L2_BUF_FLAG_USE_BOOTTIME flag that userspace can set when queuing > the buffer and that indicates that instead of the MONOTONIC timestamp, it should return > the BOOTTIME timestamp. This requires a simple helper function that returns either > ktime_get_ns or ktime_get_boottime_ns based on the vb2_v4l2_buffer flags field. > > It's definitely more work (although it can be limited to drivers that use vb2), > but much more useful. > > Regards, > > Hans > Agree. We will add new V4L2_BUF_FLAG_USE_BOOTTIME flag (0x00006000.) to replace this V4L2_BUF_FLAG_TIMESTAMP_BOOTIME flag for better usage. > > + > > /* Timestamp sources. */ > > #define V4L2_BUF_FLAG_TSTAMP_SRC_MASK 0x00070000 > > #define V4L2_BUF_FLAG_TSTAMP_SRC_EOF 0x00000000 > > > Sincerely Jungo _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_SANE_2 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E1D58C33CA3 for ; Fri, 10 Jan 2020 10:08:26 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id B94332072A for ; Fri, 10 Jan 2020 10:08:26 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="f3QTjWV/"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="q7++ne3A" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B94332072A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Date:To:From:Subject:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=JDECUKAGUMZuatNzJVJ7zvSRUoBiurWFLY5DcIQyKdo=; b=f3QTjWV/WwgGU3 4yRx9mnuuysFFB68hmSg6PyFjtkQteM40P6ez57yoF/evxDgSA1QVStFdOup0CbmBC+5oksbuyJml YJ47ulNqOZLSZsLCD/7KlY5ZUpjgJDDD7E7QgNaslFutIWK0NKZBo09SXLYYOLplhMilWCcxiwKvZ NVF4RiaC0mExF0tjl8ytK6sJA6T4OXVtvVAaIGn5xLQt6bow2DIIBdIUNXWjcM7VXPJXO2bI9MyHH TIJ5DP2O+KuBD2Md7iHDlWgYsJUcPmsDqZ4AVXbLK7P44E7cWeFkgir5dFHEpn55BZ/oQvNZ8/MmC Uw3BD4RRtmA4AhkTs5Vw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1iprDO-0005be-Bq; Fri, 10 Jan 2020 10:08:26 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1iprDL-0005aa-99; Fri, 10 Jan 2020 10:08:24 +0000 X-UUID: 5dd8b50e51b747a8812a05ececdc82aa-20200110 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=FYP5p0wxJ3QFwXLMGPYrw3vhC17+4GD5PVgVtXVVOhQ=; b=q7++ne3AnzWXWNTq4xNmouj5aa2eDIdlw9sI08/AJ9rMRXmfJLWQPH7JNajbssaEgwEInkfipZG1OEArM7j0VrO1/CGzQMcXpfHV7zAsvIzJee/zsfMX4SgzOmBN5TXLN1ngB2npMiEzvkyKPmwgO6F6tcri2K125pg+ug/bR9s=; X-UUID: 5dd8b50e51b747a8812a05ececdc82aa-20200110 Received: from mtkcas66.mediatek.inc [(172.29.193.44)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 22888282; Fri, 10 Jan 2020 02:08:18 -0800 Received: from mtkmbs07n1.mediatek.inc (172.21.101.16) by MTKMBS62N1.mediatek.inc (172.29.193.41) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 10 Jan 2020 02:08:57 -0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by mtkmbs07n1.mediatek.inc (172.21.101.16) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 10 Jan 2020 18:07:49 +0800 Received: from [172.21.84.99] (172.21.84.99) by mtkcas09.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Fri, 10 Jan 2020 18:08:54 +0800 Message-ID: <1578650895.3348.18.camel@mtksdccf07> Subject: Re: [v6, 3/5] media: videodev2.h: Add new boottime timestamp type From: Jungo Lin To: Hans Verkuil Date: Fri, 10 Jan 2020 18:08:15 +0800 In-Reply-To: <081d7d77-2bf7-0fc2-60ea-8ba8faa5b6af@xs4all.nl> References: <20191219054930.29513-1-jungo.lin@mediatek.com> <20191219054930.29513-4-jungo.lin@mediatek.com> <081d7d77-2bf7-0fc2-60ea-8ba8faa5b6af@xs4all.nl> X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200110_020823_328292_C0561539 X-CRM114-Status: GOOD ( 19.89 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: ryan.yu@mediatek.com, frankie.chiu@mediatek.com, laurent.pinchart@ideasonboard.com, robh@kernel.org, Rynn.Wu@mediatek.com, suleiman@chromium.org, Jerry-ch.Chen@mediatek.com, frederic.chen@mediatek.com, linux-media@vger.kernel.org, devicetree@vger.kernel.org, shik@chromium.org, yuzhao@chromium.org, linux-mediatek@lists.infradead.org, matthias.bgg@gmail.com, mchehab@kernel.org, linux-arm-kernel@lists.infradead.org, Sean.Cheng@mediatek.com, srv_heupstream@mediatek.com, sj.huang@mediatek.com, tfiga@chromium.org, zwisler@chromium.org, ddavenport@chromium.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi Hans: Appreciate your comments on this patch. On Tue, 2020-01-07 at 15:10 +0100, Hans Verkuil wrote: > On 12/19/19 6:49 AM, Jungo Lin wrote: > > For Camera AR(Augmented Reality) application requires camera timestamps > > to be reported with CLOCK_BOOTTIME to sync timestamp with other sensor > > sources. > > > > The boottime timestamp is identical to monotonic timestamp, > > except it also includes any time that the system is suspended. > > > > Signed-off-by: Jungo Lin > > --- > > Changes from v6: > > - No change. > > --- > > Documentation/media/uapi/v4l/buffer.rst | 11 ++++++++++- > > include/uapi/linux/videodev2.h | 2 ++ > > 2 files changed, 12 insertions(+), 1 deletion(-) > > > > diff --git a/Documentation/media/uapi/v4l/buffer.rst b/Documentation/media/uapi/v4l/buffer.rst > > index 9149b57728e5..f45bfce7fddd 100644 > > --- a/Documentation/media/uapi/v4l/buffer.rst > > +++ b/Documentation/media/uapi/v4l/buffer.rst > > @@ -662,13 +662,22 @@ Buffer Flags > > - 0x00002000 > > - The buffer timestamp has been taken from the ``CLOCK_MONOTONIC`` > > clock. To access the same clock outside V4L2, use > > - :c:func:`clock_gettime`. > > + :c:func:`clock_gettime` using clock IDs ``CLOCK_MONOTONIC``. > > IDs -> ID > Ok, fix in next version. > > * .. _`V4L2-BUF-FLAG-TIMESTAMP-COPY`: > > > > - ``V4L2_BUF_FLAG_TIMESTAMP_COPY`` > > - 0x00004000 > > - The CAPTURE buffer timestamp has been taken from the corresponding > > OUTPUT buffer. This flag applies only to mem2mem devices. > > + * .. _`V4L2_BUF_FLAG_TIMESTAMP_BOOTIME`: > > You mistyped BOOTTIME as BOOTIME in a lot of places. Please check. > Ok, fix this typo in next version. > > + > > + - ``V4L2_BUF_FLAG_TIMESTAMP_BOOTIME`` > > + - 0x00008000 > > + - The buffer timestamp has been taken from the ``CLOCK_BOOTTIME`` > > + clock. To access the same clock outside V4L2, use > > + :c:func:`clock_gettime` using clock IDs ``CLOCK_BOOTTIME``. > > IDs -> ID > Ditto. > > + Identical to CLOCK_MONOTONIC, except it also includes any time that > > + the system is suspended. > > * .. _`V4L2-BUF-FLAG-TSTAMP-SRC-MASK`: > > > > - ``V4L2_BUF_FLAG_TSTAMP_SRC_MASK`` > > diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h > > index 04481c717fee..74ef9472e702 100644 > > --- a/include/uapi/linux/videodev2.h > > +++ b/include/uapi/linux/videodev2.h > > @@ -1060,6 +1060,8 @@ static inline __u64 v4l2_timeval_to_ns(const struct timeval *tv) > > #define V4L2_BUF_FLAG_TIMESTAMP_UNKNOWN 0x00000000 > > #define V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC 0x00002000 > > #define V4L2_BUF_FLAG_TIMESTAMP_COPY 0x00004000 > > +#define V4L2_BUF_FLAG_TIMESTAMP_BOOTIME 0x00008000 > > This should be 0x00006000. > > (flags & V4L2_BUF_FLAG_TIMESTAMP_MASK) is a value that determines the timestamp > source, so these timestamp defines are values, not bitmasks. > > However, I don't like your approach. Whether to use MONOTONIC or BOOTTIME is really > a userspace decision, and locking a driver to one of these two options seems > wrong to me. > > Instead add new V4L2_BUF_FLAG_USE_BOOTTIME flag that userspace can set when queuing > the buffer and that indicates that instead of the MONOTONIC timestamp, it should return > the BOOTTIME timestamp. This requires a simple helper function that returns either > ktime_get_ns or ktime_get_boottime_ns based on the vb2_v4l2_buffer flags field. > > It's definitely more work (although it can be limited to drivers that use vb2), > but much more useful. > > Regards, > > Hans > Agree. We will add new V4L2_BUF_FLAG_USE_BOOTTIME flag (0x00006000.) to replace this V4L2_BUF_FLAG_TIMESTAMP_BOOTIME flag for better usage. > > + > > /* Timestamp sources. */ > > #define V4L2_BUF_FLAG_TSTAMP_SRC_MASK 0x00070000 > > #define V4L2_BUF_FLAG_TSTAMP_SRC_EOF 0x00000000 > > > Sincerely Jungo _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.3 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_SANE_2 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7F75CC33CA4 for ; Fri, 10 Jan 2020 10:08:26 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 561DB2082E for ; Fri, 10 Jan 2020 10:08:26 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="q7++ne3A" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727513AbgAJKIY (ORCPT ); Fri, 10 Jan 2020 05:08:24 -0500 Received: from mailgw01.mediatek.com ([210.61.82.183]:58767 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1727539AbgAJKIX (ORCPT ); Fri, 10 Jan 2020 05:08:23 -0500 X-UUID: 2ca0150a18fd4d6698ea54d17c03c9c8-20200110 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=FYP5p0wxJ3QFwXLMGPYrw3vhC17+4GD5PVgVtXVVOhQ=; b=q7++ne3AnzWXWNTq4xNmouj5aa2eDIdlw9sI08/AJ9rMRXmfJLWQPH7JNajbssaEgwEInkfipZG1OEArM7j0VrO1/CGzQMcXpfHV7zAsvIzJee/zsfMX4SgzOmBN5TXLN1ngB2npMiEzvkyKPmwgO6F6tcri2K125pg+ug/bR9s=; X-UUID: 2ca0150a18fd4d6698ea54d17c03c9c8-20200110 Received: from mtkexhb01.mediatek.inc [(172.21.101.102)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 568683733; Fri, 10 Jan 2020 18:08:17 +0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by mtkmbs07n1.mediatek.inc (172.21.101.16) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 10 Jan 2020 18:07:49 +0800 Received: from [172.21.84.99] (172.21.84.99) by mtkcas09.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Fri, 10 Jan 2020 18:08:54 +0800 Message-ID: <1578650895.3348.18.camel@mtksdccf07> Subject: Re: [v6, 3/5] media: videodev2.h: Add new boottime timestamp type From: Jungo Lin To: Hans Verkuil CC: , , , , , , , , , , , , , , , , , , , , , Date: Fri, 10 Jan 2020 18:08:15 +0800 In-Reply-To: <081d7d77-2bf7-0fc2-60ea-8ba8faa5b6af@xs4all.nl> References: <20191219054930.29513-1-jungo.lin@mediatek.com> <20191219054930.29513-4-jungo.lin@mediatek.com> <081d7d77-2bf7-0fc2-60ea-8ba8faa5b6af@xs4all.nl> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N Content-Transfer-Encoding: base64 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org SGkgSGFuczoNCg0KQXBwcmVjaWF0ZSB5b3VyIGNvbW1lbnRzIG9uIHRoaXMgcGF0Y2guDQoNCk9u IFR1ZSwgMjAyMC0wMS0wNyBhdCAxNToxMCArMDEwMCwgSGFucyBWZXJrdWlsIHdyb3RlOg0KPiBP biAxMi8xOS8xOSA2OjQ5IEFNLCBKdW5nbyBMaW4gd3JvdGU6DQo+ID4gRm9yIENhbWVyYSBBUihB dWdtZW50ZWQgUmVhbGl0eSkgYXBwbGljYXRpb24gcmVxdWlyZXMgY2FtZXJhIHRpbWVzdGFtcHMN Cj4gPiB0byBiZSByZXBvcnRlZCB3aXRoIENMT0NLX0JPT1RUSU1FIHRvIHN5bmMgdGltZXN0YW1w IHdpdGggb3RoZXIgc2Vuc29yDQo+ID4gc291cmNlcy4NCj4gPiANCj4gPiBUaGUgYm9vdHRpbWUg dGltZXN0YW1wIGlzIGlkZW50aWNhbCB0byBtb25vdG9uaWMgdGltZXN0YW1wLA0KPiA+IGV4Y2Vw dCBpdCBhbHNvIGluY2x1ZGVzIGFueSB0aW1lIHRoYXQgdGhlIHN5c3RlbSBpcyBzdXNwZW5kZWQu DQo+ID4gDQo+ID4gU2lnbmVkLW9mZi1ieTogSnVuZ28gTGluIDxqdW5nby5saW5AbWVkaWF0ZWsu Y29tPg0KPiA+IC0tLQ0KPiA+IENoYW5nZXMgZnJvbSB2NjoNCj4gPiAgLSBObyBjaGFuZ2UuDQo+ ID4gLS0tDQo+ID4gIERvY3VtZW50YXRpb24vbWVkaWEvdWFwaS92NGwvYnVmZmVyLnJzdCB8IDEx ICsrKysrKysrKystDQo+ID4gIGluY2x1ZGUvdWFwaS9saW51eC92aWRlb2RldjIuaCAgICAgICAg ICB8ICAyICsrDQo+ID4gIDIgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxl dGlvbigtKQ0KPiA+IA0KPiA+IGRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL21lZGlhL3VhcGkv djRsL2J1ZmZlci5yc3QgYi9Eb2N1bWVudGF0aW9uL21lZGlhL3VhcGkvdjRsL2J1ZmZlci5yc3QN Cj4gPiBpbmRleCA5MTQ5YjU3NzI4ZTUuLmY0NWJmY2U3ZmRkZCAxMDA2NDQNCj4gPiAtLS0gYS9E b2N1bWVudGF0aW9uL21lZGlhL3VhcGkvdjRsL2J1ZmZlci5yc3QNCj4gPiArKysgYi9Eb2N1bWVu dGF0aW9uL21lZGlhL3VhcGkvdjRsL2J1ZmZlci5yc3QNCj4gPiBAQCAtNjYyLDEzICs2NjIsMjIg QEAgQnVmZmVyIEZsYWdzDQo+ID4gICAgICAgIC0gMHgwMDAwMjAwMA0KPiA+ICAgICAgICAtIFRo ZSBidWZmZXIgdGltZXN0YW1wIGhhcyBiZWVuIHRha2VuIGZyb20gdGhlIGBgQ0xPQ0tfTU9OT1RP TklDYGANCj4gPiAgCWNsb2NrLiBUbyBhY2Nlc3MgdGhlIHNhbWUgY2xvY2sgb3V0c2lkZSBWNEwy LCB1c2UNCj4gPiAtCTpjOmZ1bmM6YGNsb2NrX2dldHRpbWVgLg0KPiA+ICsJOmM6ZnVuYzpgY2xv Y2tfZ2V0dGltZWAgdXNpbmcgY2xvY2sgSURzIGBgQ0xPQ0tfTU9OT1RPTklDYGAuDQo+IA0KPiBJ RHMgLT4gSUQNCj4gDQoNCk9rLCBmaXggaW4gbmV4dCB2ZXJzaW9uLg0KDQo+ID4gICAgICAqIC4u IF9gVjRMMi1CVUYtRkxBRy1USU1FU1RBTVAtQ09QWWA6DQo+ID4gIA0KPiA+ICAgICAgICAtIGBg VjRMMl9CVUZfRkxBR19USU1FU1RBTVBfQ09QWWBgDQo+ID4gICAgICAgIC0gMHgwMDAwNDAwMA0K PiA+ICAgICAgICAtIFRoZSBDQVBUVVJFIGJ1ZmZlciB0aW1lc3RhbXAgaGFzIGJlZW4gdGFrZW4g ZnJvbSB0aGUgY29ycmVzcG9uZGluZw0KPiA+ICAJT1VUUFVUIGJ1ZmZlci4gVGhpcyBmbGFnIGFw cGxpZXMgb25seSB0byBtZW0ybWVtIGRldmljZXMuDQo+ID4gKyAgICAqIC4uIF9gVjRMMl9CVUZf RkxBR19USU1FU1RBTVBfQk9PVElNRWA6DQo+IA0KPiBZb3UgbWlzdHlwZWQgQk9PVFRJTUUgYXMg Qk9PVElNRSBpbiBhIGxvdCBvZiBwbGFjZXMuIFBsZWFzZSBjaGVjay4NCj4gDQoNCk9rLCBmaXgg dGhpcyB0eXBvIGluIG5leHQgdmVyc2lvbi4NCg0KPiA+ICsNCj4gPiArICAgICAgLSBgYFY0TDJf QlVGX0ZMQUdfVElNRVNUQU1QX0JPT1RJTUVgYA0KPiA+ICsgICAgICAtIDB4MDAwMDgwMDANCj4g PiArICAgICAgLSBUaGUgYnVmZmVyIHRpbWVzdGFtcCBoYXMgYmVlbiB0YWtlbiBmcm9tIHRoZSBg YENMT0NLX0JPT1RUSU1FYGANCj4gPiArCWNsb2NrLiBUbyBhY2Nlc3MgdGhlIHNhbWUgY2xvY2sg b3V0c2lkZSBWNEwyLCB1c2UNCj4gPiArCTpjOmZ1bmM6YGNsb2NrX2dldHRpbWVgIHVzaW5nIGNs b2NrIElEcyBgYENMT0NLX0JPT1RUSU1FYGAuDQo+IA0KPiBJRHMgLT4gSUQNCj4gDQoNCkRpdHRv Lg0KDQo+ID4gKwlJZGVudGljYWwgdG8gQ0xPQ0tfTU9OT1RPTklDLCBleGNlcHQgaXQgYWxzbyBp bmNsdWRlcyBhbnkgdGltZSB0aGF0DQo+ID4gKwl0aGUgc3lzdGVtIGlzIHN1c3BlbmRlZC4NCj4g PiAgICAgICogLi4gX2BWNEwyLUJVRi1GTEFHLVRTVEFNUC1TUkMtTUFTS2A6DQo+ID4gIA0KPiA+ ICAgICAgICAtIGBgVjRMMl9CVUZfRkxBR19UU1RBTVBfU1JDX01BU0tgYA0KPiA+IGRpZmYgLS1n aXQgYS9pbmNsdWRlL3VhcGkvbGludXgvdmlkZW9kZXYyLmggYi9pbmNsdWRlL3VhcGkvbGludXgv dmlkZW9kZXYyLmgNCj4gPiBpbmRleCAwNDQ4MWM3MTdmZWUuLjc0ZWY5NDcyZTcwMiAxMDA2NDQN Cj4gPiAtLS0gYS9pbmNsdWRlL3VhcGkvbGludXgvdmlkZW9kZXYyLmgNCj4gPiArKysgYi9pbmNs dWRlL3VhcGkvbGludXgvdmlkZW9kZXYyLmgNCj4gPiBAQCAtMTA2MCw2ICsxMDYwLDggQEAgc3Rh dGljIGlubGluZSBfX3U2NCB2NGwyX3RpbWV2YWxfdG9fbnMoY29uc3Qgc3RydWN0IHRpbWV2YWwg KnR2KQ0KPiA+ICAjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRVNUQU1QX1VOS05PV04JCTB4MDAw MDAwMDANCj4gPiAgI2RlZmluZSBWNEwyX0JVRl9GTEFHX1RJTUVTVEFNUF9NT05PVE9OSUMJMHgw MDAwMjAwMA0KPiA+ICAjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRVNUQU1QX0NPUFkJCTB4MDAw MDQwMDANCj4gPiArI2RlZmluZSBWNEwyX0JVRl9GTEFHX1RJTUVTVEFNUF9CT09USU1FCQkweDAw MDA4MDAwDQo+IA0KPiBUaGlzIHNob3VsZCBiZSAweDAwMDA2MDAwLg0KPiANCj4gKGZsYWdzICYg VjRMMl9CVUZfRkxBR19USU1FU1RBTVBfTUFTSykgaXMgYSB2YWx1ZSB0aGF0IGRldGVybWluZXMg dGhlIHRpbWVzdGFtcA0KPiBzb3VyY2UsIHNvIHRoZXNlIHRpbWVzdGFtcCBkZWZpbmVzIGFyZSB2 YWx1ZXMsIG5vdCBiaXRtYXNrcy4NCj4gDQo+IEhvd2V2ZXIsIEkgZG9uJ3QgbGlrZSB5b3VyIGFw cHJvYWNoLiBXaGV0aGVyIHRvIHVzZSBNT05PVE9OSUMgb3IgQk9PVFRJTUUgaXMgcmVhbGx5DQo+ IGEgdXNlcnNwYWNlIGRlY2lzaW9uLCBhbmQgbG9ja2luZyBhIGRyaXZlciB0byBvbmUgb2YgdGhl c2UgdHdvIG9wdGlvbnMgc2VlbXMNCj4gd3JvbmcgdG8gbWUuDQo+IA0KPiBJbnN0ZWFkIGFkZCBu ZXcgVjRMMl9CVUZfRkxBR19VU0VfQk9PVFRJTUUgZmxhZyB0aGF0IHVzZXJzcGFjZSBjYW4gc2V0 IHdoZW4gcXVldWluZw0KPiB0aGUgYnVmZmVyIGFuZCB0aGF0IGluZGljYXRlcyB0aGF0IGluc3Rl YWQgb2YgdGhlIE1PTk9UT05JQyB0aW1lc3RhbXAsIGl0IHNob3VsZCByZXR1cm4NCj4gdGhlIEJP T1RUSU1FIHRpbWVzdGFtcC4gVGhpcyByZXF1aXJlcyBhIHNpbXBsZSBoZWxwZXIgZnVuY3Rpb24g dGhhdCByZXR1cm5zIGVpdGhlcg0KPiBrdGltZV9nZXRfbnMgb3Iga3RpbWVfZ2V0X2Jvb3R0aW1l X25zIGJhc2VkIG9uIHRoZSB2YjJfdjRsMl9idWZmZXIgZmxhZ3MgZmllbGQuDQo+IA0KPiBJdCdz IGRlZmluaXRlbHkgbW9yZSB3b3JrIChhbHRob3VnaCBpdCBjYW4gYmUgbGltaXRlZCB0byBkcml2 ZXJzIHRoYXQgdXNlIHZiMiksDQo+IGJ1dCBtdWNoIG1vcmUgdXNlZnVsLg0KPiANCj4gUmVnYXJk cywNCj4gDQo+IAlIYW5zDQo+IA0KDQpBZ3JlZS4NCldlIHdpbGwgYWRkIG5ldyBWNEwyX0JVRl9G TEFHX1VTRV9CT09UVElNRSBmbGFnICgweDAwMDA2MDAwLikgdG8gcmVwbGFjZQ0KdGhpcyBWNEwy X0JVRl9GTEFHX1RJTUVTVEFNUF9CT09USU1FIGZsYWcgZm9yIGJldHRlciB1c2FnZS4NCg0KPiA+ ICsNCj4gPiAgLyogVGltZXN0YW1wIHNvdXJjZXMuICovDQo+ID4gICNkZWZpbmUgVjRMMl9CVUZf RkxBR19UU1RBTVBfU1JDX01BU0sJCTB4MDAwNzAwMDANCj4gPiAgI2RlZmluZSBWNEwyX0JVRl9G TEFHX1RTVEFNUF9TUkNfRU9GCQkweDAwMDAwMDAwDQo+ID4gDQo+IA0KDQpTaW5jZXJlbHkNCg0K SnVuZ28NCg==