1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
2.. c:namespace:: DTV.video
3
4.. _video_fopen:
5
6================
7dvb video open()
8================
9
10Name
11----
12
13dvb video open()
14
15.. attention:: This ioctl is deprecated.
16
17Synopsis
18--------
19
20.. c:function:: int open(const char *deviceName, int flags)
21
22Arguments
23---------
24
25.. flat-table::
26    :header-rows:  0
27    :stub-columns: 0
28
29    -  .. row 1
30
31       -  const char \*deviceName
32
33       -  Name of specific video device.
34
35    -  .. row 2
36
37       -  int flags
38
39       -  A bit-wise OR of the following flags:
40
41    -  .. row 3
42
43       -
44       -  O_RDONLY read-only access
45
46    -  .. row 4
47
48       -
49       -  O_RDWR read/write access
50
51    -  .. row 5
52
53       -
54       -  O_NONBLOCK open in non-blocking mode
55
56    -  .. row 6
57
58       -
59       -  (blocking mode is the default)
60
61Description
62-----------
63
64This system call opens a named video device (e.g.
65/dev/dvb/adapter0/video0) for subsequent use.
66
67When an open() call has succeeded, the device will be ready for use. The
68significance of blocking or non-blocking mode is described in the
69documentation for functions where there is a difference. It does not
70affect the semantics of the open() call itself. A device opened in
71blocking mode can later be put into non-blocking mode (and vice versa)
72using the F_SETFL command of the fcntl system call. This is a standard
73system call, documented in the Linux manual page for fcntl. Only one
74user can open the Video Device in O_RDWR mode. All other attempts to
75open the device in this mode will fail, and an error-code will be
76returned. If the Video Device is opened in O_RDONLY mode, the only
77ioctl call that can be used is VIDEO_GET_STATUS. All other call will
78return an error code.
79
80Return Value
81------------
82
83.. tabularcolumns:: |p{2.5cm}|p{15.0cm}|
84
85.. flat-table::
86    :header-rows:  0
87    :stub-columns: 0
88
89    -  .. row 1
90
91       -  ``ENODEV``
92
93       -  Device driver not loaded/available.
94
95    -  .. row 2
96
97       -  ``EINTERNAL``
98
99       -  Internal error.
100
101    -  .. row 3
102
103       -  ``EBUSY``
104
105       -  Device or resource busy.
106
107    -  .. row 4
108
109       -  ``EINVAL``
110
111       -  Invalid argument.
112