Linux 6.9-rc1
[linux-2.6-microblaze.git] / Documentation / userspace-api / media / dvb / dmx-set-filter.rst
1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
2 .. c:namespace:: DTV.dmx
3
4 .. _DMX_SET_FILTER:
5
6 ==============
7 DMX_SET_FILTER
8 ==============
9
10 Name
11 ----
12
13 DMX_SET_FILTER
14
15 Synopsis
16 --------
17
18 .. c:macro:: DMX_SET_FILTER
19
20 ``int ioctl(int fd, DMX_SET_FILTER, struct dmx_sct_filter_params *params)``
21
22 Arguments
23 ---------
24
25 ``fd``
26     File descriptor returned by :c:func:`open()`.
27
28 ``params``
29
30     Pointer to structure containing filter parameters.
31
32 Description
33 -----------
34
35 This ioctl call sets up a filter according to the filter and mask
36 parameters provided. A timeout may be defined stating number of seconds
37 to wait for a section to be loaded. A value of 0 means that no timeout
38 should be applied. Finally there is a flag field where it is possible to
39 state whether a section should be CRC-checked, whether the filter should
40 be a "one-shot" filter, i.e. if the filtering operation should be
41 stopped after the first section is received, and whether the filtering
42 operation should be started immediately (without waiting for a
43 :ref:`DMX_START` ioctl call). If a filter was previously set-up, this
44 filter will be canceled, and the receive buffer will be flushed.
45
46 Return Value
47 ------------
48
49 On success 0 is returned.
50
51 On error -1 is returned, and the ``errno`` variable is set
52 appropriately.
53
54 The generic error codes are described at the
55 :ref:`Generic Error Codes <gen-errors>` chapter.