From e969084030b03f4997d63b3f718ba814290e0705 Mon Sep 17 00:00:00 2001 From: Hans Verkuil Date: Sat, 18 Jun 2011 06:58:29 -0300 Subject: [PATCH] [media] DocBook: update V4L Event Interface section Starting with v3.1 the V4L2 API provides certain guarantees with respect to events. Document these. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab --- Documentation/DocBook/media/v4l/dev-event.xml | 30 +++++++++++++++---- .../media/v4l/vidioc-subscribe-event.xml | 15 +++++++--- 2 files changed, 36 insertions(+), 9 deletions(-) diff --git a/Documentation/DocBook/media/v4l/dev-event.xml b/Documentation/DocBook/media/v4l/dev-event.xml index be5a98fb4fab..f14ae3fe107c 100644 --- a/Documentation/DocBook/media/v4l/dev-event.xml +++ b/Documentation/DocBook/media/v4l/dev-event.xml @@ -1,9 +1,10 @@ Event Interface - The V4L2 event interface provides means for user to get + The V4L2 event interface provides a means for a user to get immediately notified on certain conditions taking place on a device. This might include start of frame or loss of signal events, for - example. + example. Changes in the value or state of a V4L2 control can also be + reported through events. To receive events, the events the user is interested in first must @@ -15,12 +16,31 @@ The event subscriptions and event queues are specific to file handles. Subscribing an event on one file handle does not affect - other file handles. - + other file handles. The information on dequeueable events is obtained by using select or poll system calls on video devices. The V4L2 events use POLLPRI events on - poll system call and exceptions on select system call. + poll system call and exceptions on select system call. + + Starting with kernel 3.1 certain guarantees can be given with + regards to events: + + Each subscribed event has its own internal dedicated event queue. +This means that flooding of one event type will not interfere with other +event types. + + + If the internal event queue for a particular subscribed event +becomes full, then the oldest event in that queue will be dropped. + + + Where applicable, certain event types can ensure that the payload +of the oldest event that is about to be dropped will be merged with the payload +of the next oldest event. Thus ensuring that no information is lost, but only an +intermediate step leading up to that information. See the documentation for the +event you want to subscribe to whether this is applicable for that event or not. + +