From patchwork Tue Jun 7 15:05:20 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hans Verkuil X-Patchwork-Id: 857332 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id p57F5e6Q010205 for ; Tue, 7 Jun 2011 15:05:49 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755439Ab1FGPFk (ORCPT ); Tue, 7 Jun 2011 11:05:40 -0400 Received: from smtp-vbr1.xs4all.nl ([194.109.24.21]:4440 "EHLO smtp-vbr1.xs4all.nl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755402Ab1FGPFj (ORCPT ); Tue, 7 Jun 2011 11:05:39 -0400 Received: from tschai.lan (215.80-203-102.nextgentel.com [80.203.102.215]) (authenticated bits=0) by smtp-vbr1.xs4all.nl (8.13.8/8.13.8) with ESMTP id p57F5QqZ037616 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 7 Jun 2011 17:05:36 +0200 (CEST) (envelope-from hverkuil@xs4all.nl) From: Hans Verkuil To: linux-media@vger.kernel.org Cc: Hans Verkuil Subject: [RFCv3 PATCH 15/18] V4L2 spec: document control events. Date: Tue, 7 Jun 2011 17:05:20 +0200 Message-Id: <98e709029bba1bffd345d60f8a5f14b869f6a11b.1307458245.git.hans.verkuil@cisco.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1307459123-17810-1-git-send-email-hverkuil@xs4all.nl> References: <1307459123-17810-1-git-send-email-hverkuil@xs4all.nl> In-Reply-To: References: X-Virus-Scanned: by XS4ALL Virus Scanner Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Tue, 07 Jun 2011 15:05:50 +0000 (UTC) From: Hans Verkuil Signed-off-by: Hans Verkuil --- Documentation/DocBook/media/v4l/vidioc-dqevent.xml | 17 +++- .../DocBook/media/v4l/vidioc-subscribe-event.xml | 142 +++++++++++++++++++- 2 files changed, 157 insertions(+), 2 deletions(-) diff --git a/Documentation/DocBook/media/v4l/vidioc-dqevent.xml b/Documentation/DocBook/media/v4l/vidioc-dqevent.xml index 4e0a7cc..b8c4f76 100644 --- a/Documentation/DocBook/media/v4l/vidioc-dqevent.xml +++ b/Documentation/DocBook/media/v4l/vidioc-dqevent.xml @@ -81,6 +81,13 @@ + &v4l2-event-ctrl; + ctrl + Event data for event V4L2_EVENT_CTRL. + + + + __u8 data[64] Event data. Defined by the event type. The union @@ -110,8 +117,16 @@ Event timestamp. + u32 + id + + The ID associated with the event source. If the event does not + have an associated ID (this depends on the event type), then this + is 0. + + __u32 - reserved[9] + reserved[8] Reserved for future extensions. Drivers must set the array to zero. diff --git a/Documentation/DocBook/media/v4l/vidioc-subscribe-event.xml b/Documentation/DocBook/media/v4l/vidioc-subscribe-event.xml index 8b50179..975f603 100644 --- a/Documentation/DocBook/media/v4l/vidioc-subscribe-event.xml +++ b/Documentation/DocBook/media/v4l/vidioc-subscribe-event.xml @@ -64,7 +64,19 @@ __u32 - reserved[7] + id + ID of the event source. If there is no ID associated with + the event source, then set this to 0. Whether or not an event + needs an ID depends on the event type. + + + __u32 + flags + Event flags, see . + + + __u32 + reserved[5] Reserved for future extensions. Drivers and applications must set the array to zero. @@ -100,6 +112,23 @@ + V4L2_EVENT_CTRL + 3 + This event requires that the id + matches the control ID from which you want to receive events. + This event is triggered if the control's value changes, if a + button control is pressed or if the control's flags change. + This event has &v4l2-event-ctrl; associated with it. This struct + contains much of the same information as &v4l2-queryctrl; and + &v4l2-control;. + + If the event is generated due to a call to &VIDIOC-S-CTRL; or + &VIDIOC-S-EXT-CTRLS;, then the event will not be sent to + the file handle that called the ioctl function. This prevents + nasty feedback loops. + + + V4L2_EVENT_PRIVATE_START 0x08000000 Base event number for driver-private events. @@ -108,6 +137,23 @@ + + Event Flags + + &cs-def; + + + V4L2_EVENT_SUB_FL_SEND_INITIAL + 0x0001 + When this event is subscribed an initial event will be sent + containing the current status. This only makes sense for events + that are triggered by a status change. Other events will ignore + this flag. + + + +
+ struct <structname>v4l2_event_vsync</structname> @@ -122,6 +168,100 @@
+ + struct <structname>v4l2_event_ctrl</structname> + + &cs-str; + + + __u32 + changes + + A bitmask that tells what has changed. See . + + + __u32 + type + + The type of the control. See &v4l2-ctrl-type;. + + + union (anonymous) + + + + + + + __s32 + value + The 32-bit value of the control for 32-bit control types. + This is 0 for string controls since the value of a string + cannot be passed using &VIDIOC-DQEVENT;. + + + + __s64 + value64 + The 64-bit value of the control for 64-bit control types. + + + __u32 + flags + + The control flags. See . + + + __s32 + minimum + + The minimum value of the control. See &v4l2-queryctrl;. + + + __s32 + maximum + + The maximum value of the control. See &v4l2-queryctrl;. + + + __s32 + step + + The step value of the control. See &v4l2-queryctrl;. + + + __s32 + default_value + + The default value value of the control. See &v4l2-queryctrl;. + + + +
+ + + Changes + + &cs-def; + + + V4L2_EVENT_CTRL_CH_VALUE + 0x0001 + This control event was triggered because the value of the control + changed. Special case: if a button control is pressed, then this + event is sent as well, even though there is not explicit value + associated with a button control. + + + V4L2_EVENT_CTRL_CH_FLAGS + 0x0002 + This control event was triggered because the control flags + changed. + + + +
+