summaryrefslogtreecommitdiff
path: root/Documentation/media/uapi/dvb/dmx-fread.rst
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/media/uapi/dvb/dmx-fread.rst')
-rw-r--r--Documentation/media/uapi/dvb/dmx-fread.rst78
1 files changed, 32 insertions, 46 deletions
diff --git a/Documentation/media/uapi/dvb/dmx-fread.rst b/Documentation/media/uapi/dvb/dmx-fread.rst
index e8c7f4db353f..488bdc4ba178 100644
--- a/Documentation/media/uapi/dvb/dmx-fread.rst
+++ b/Documentation/media/uapi/dvb/dmx-fread.rst
@@ -2,14 +2,14 @@
.. _dmx_fread:
-================
-DVB demux read()
-================
+=======================
+Digital TV demux read()
+=======================
Name
----
-DVB demux read()
+Digital TV demux read()
Synopsis
@@ -33,62 +33,48 @@ Arguments
Description
-----------
-This system call returns filtered data, which might be section or PES
-data. The filtered data is transferred from the driver’s internal
-circular buffer to buf. The maximum amount of data to be transferred is
-implied by count.
+This system call returns filtered data, which might be section or Packetized
+Elementary Stream (PES) data. The filtered data is transferred from
+the driver’s internal circular buffer to ``buf``. The maximum amount of data
+to be transferred is implied by count.
+
+.. note::
+
+ if a section filter created with
+ :c:type:`DMX_CHECK_CRC <dmx_sct_filter_params>` flag set,
+ data that fails on CRC check will be silently ignored.
+
Return Value
------------
+On success 0 is returned.
+
+On error -1 is returned, and the ``errno`` variable is set
+appropriately.
+
.. tabularcolumns:: |p{2.5cm}|p{15.0cm}|
.. flat-table::
:header-rows: 0
:stub-columns: 0
+ :widths: 1 16
+ - - ``EWOULDBLOCK``
+ - No data to return and ``O_NONBLOCK`` was specified.
- - .. row 1
-
- - ``EWOULDBLOCK``
-
- - No data to return and O_NONBLOCK was specified.
-
- - .. row 2
-
- - ``EBADF``
-
- - fd is not a valid open file descriptor.
-
- - .. row 3
-
- - ``ECRC``
-
- - Last section had a CRC error - no data returned. The buffer is
- flushed.
-
- - .. row 4
-
- - ``EOVERFLOW``
-
- -
-
- - .. row 5
-
- -
+ - - ``EOVERFLOW``
- The filtered data was not read from the buffer in due time,
resulting in non-read data being lost. The buffer is flushed.
- - .. row 6
-
- - ``ETIMEDOUT``
-
- - The section was not loaded within the stated timeout period. See
- ioctl DMX_SET_FILTER for how to set a timeout.
+ - - ``ETIMEDOUT``
+ - The section was not loaded within the stated timeout period.
+ See ioctl :ref:`DMX_SET_FILTER` for how to set a timeout.
- - .. row 7
+ - - ``EFAULT``
+ - The driver failed to write to the callers buffer due to an
+ invalid \*buf pointer.
- - ``EFAULT``
- - The driver failed to write to the callers buffer due to an invalid
- \*buf pointer.
+The generic error codes are described at the
+:ref:`Generic Error Codes <gen-errors>` chapter.