drm/etnaviv: Implement mmap as GEM object function
[linux-2.6-microblaze.git] / Documentation / userspace-api / media / dvb / audio-fopen.rst
1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
2 .. c:namespace:: DTV.audio
3
4 .. _audio_fopen:
5
6 =======================
7 Digital TV audio open()
8 =======================
9
10 Name
11 ----
12
13 Digital TV audio open()
14
15 .. attention:: This ioctl is deprecated
16
17 Synopsis
18 --------
19
20 .. c:function:: int open(const char *deviceName, int flags)
21
22 Arguments
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 audio 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
61 Description
62 -----------
63
64 This system call opens a named audio device (e.g.
65 /dev/dvb/adapter0/audio0) for subsequent use. When an open() call has
66 succeeded, the device will be ready for use. The significance of
67 blocking or non-blocking mode is described in the documentation for
68 functions where there is a difference. It does not affect the semantics
69 of the open() call itself. A device opened in blocking mode can later be
70 put into non-blocking mode (and vice versa) using the F_SETFL command
71 of the fcntl system call. This is a standard system call, documented in
72 the Linux manual page for fcntl. Only one user can open the Audio Device
73 in O_RDWR mode. All other attempts to open the device in this mode will
74 fail, and an error code will be returned. If the Audio Device is opened
75 in O_RDONLY mode, the only ioctl call that can be used is
76 AUDIO_GET_STATUS. All other call will return with an error code.
77
78 Return Value
79 ------------
80
81 .. tabularcolumns:: |p{2.5cm}|p{15.0cm}|
82
83 .. flat-table::
84     :header-rows:  0
85     :stub-columns: 0
86
87     -  .. row 1
88
89        -  ``ENODEV``
90
91        -  Device driver not loaded/available.
92
93     -  .. row 2
94
95        -  ``EBUSY``
96
97        -  Device or resource busy.
98
99     -  .. row 3
100
101        -  ``EINVAL``
102
103        -  Invalid argument.