mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
848d10314b
Trivially fix those broken references, by copying the structs fron the header, just like other API documentation at the DVB side. This doesn't have the level of quality used at the V4L2 side of the API, but, as this documents a deprecated API, used only by av7110 driver, it doesn't make much sense to invest time making it better. Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
108 lines
2.4 KiB
ReStructuredText
108 lines
2.4 KiB
ReStructuredText
.. -*- coding: utf-8; mode: rst -*-
|
|
|
|
.. _VIDEO_GET_EVENT:
|
|
|
|
===============
|
|
VIDEO_GET_EVENT
|
|
===============
|
|
|
|
Name
|
|
----
|
|
|
|
VIDEO_GET_EVENT
|
|
|
|
.. attention:: This ioctl is deprecated.
|
|
|
|
Synopsis
|
|
--------
|
|
|
|
.. c:function:: int ioctl(fd, VIDEO_GET_EVENT, struct video_event *ev)
|
|
:name: VIDEO_GET_EVENT
|
|
|
|
|
|
Arguments
|
|
---------
|
|
|
|
.. flat-table::
|
|
:header-rows: 0
|
|
:stub-columns: 0
|
|
|
|
|
|
- .. row 1
|
|
|
|
- int fd
|
|
|
|
- File descriptor returned by a previous call to open().
|
|
|
|
- .. row 2
|
|
|
|
- int request
|
|
|
|
- Equals VIDEO_GET_EVENT for this command.
|
|
|
|
- .. row 3
|
|
|
|
- struct video_event \*ev
|
|
|
|
- Points to the location where the event, if any, is to be stored.
|
|
|
|
|
|
Description
|
|
-----------
|
|
|
|
This ioctl is for DVB devices only. To get events from a V4L2 decoder
|
|
use the V4L2 :ref:`VIDIOC_DQEVENT` ioctl instead.
|
|
|
|
This ioctl call returns an event of type video_event if available. If
|
|
an event is not available, the behavior depends on whether the device is
|
|
in blocking or non-blocking mode. In the latter case, the call fails
|
|
immediately with errno set to ``EWOULDBLOCK``. In the former case, the call
|
|
blocks until an event becomes available. The standard Linux poll()
|
|
and/or select() system calls can be used with the device file descriptor
|
|
to watch for new events. For select(), the file descriptor should be
|
|
included in the exceptfds argument, and for poll(), POLLPRI should be
|
|
specified as the wake-up condition. Read-only permissions are sufficient
|
|
for this ioctl call.
|
|
|
|
.. c:type:: video_event
|
|
|
|
.. code-block:: c
|
|
|
|
struct video_event {
|
|
__s32 type;
|
|
#define VIDEO_EVENT_SIZE_CHANGED 1
|
|
#define VIDEO_EVENT_FRAME_RATE_CHANGED 2
|
|
#define VIDEO_EVENT_DECODER_STOPPED 3
|
|
#define VIDEO_EVENT_VSYNC 4
|
|
__kernel_time_t timestamp;
|
|
union {
|
|
video_size_t size;
|
|
unsigned int frame_rate; /* in frames per 1000sec */
|
|
unsigned char vsync_field; /* unknown/odd/even/progressive */
|
|
} u;
|
|
};
|
|
|
|
Return Value
|
|
------------
|
|
|
|
On success 0 is returned, on error -1 and the ``errno`` variable is set
|
|
appropriately. The generic error codes are described at the
|
|
:ref:`Generic Error Codes <gen-errors>` chapter.
|
|
|
|
.. flat-table::
|
|
:header-rows: 0
|
|
:stub-columns: 0
|
|
|
|
|
|
- .. row 1
|
|
|
|
- ``EWOULDBLOCK``
|
|
|
|
- There is no event pending, and the device is in non-blocking mode.
|
|
|
|
- .. row 2
|
|
|
|
- ``EOVERFLOW``
|
|
|
|
- Overflow in event queue - one or more events were lost.
|