Merge branch 'pm-cpufreq'
[cascardo/linux.git] / Documentation / media / uapi / v4l / vidioc-enumaudio.rst
1 .. -*- coding: utf-8; mode: rst -*-
2
3 .. _VIDIOC_ENUMAUDIO:
4
5 **********************
6 ioctl VIDIOC_ENUMAUDIO
7 **********************
8
9 Name
10 ====
11
12 VIDIOC_ENUMAUDIO - Enumerate audio inputs
13
14
15 Synopsis
16 ========
17
18 .. c:function:: int ioctl( int fd, VIDIOC_ENUMAUDIO, struct v4l2_audio *argp )
19     :name: VIDIOC_ENUMAUDIO
20
21
22 Arguments
23 =========
24
25 ``fd``
26     File descriptor returned by :ref:`open() <func-open>`.
27
28 ``argp``
29
30
31 Description
32 ===========
33
34 To query the attributes of an audio input applications initialize the
35 ``index`` field and zero out the ``reserved`` array of a struct
36 :c:type:`v4l2_audio` and call the :ref:`VIDIOC_ENUMAUDIO`
37 ioctl with a pointer to this structure. Drivers fill the rest of the
38 structure or return an ``EINVAL`` error code when the index is out of
39 bounds. To enumerate all audio inputs applications shall begin at index
40 zero, incrementing by one until the driver returns ``EINVAL``.
41
42 See :ref:`VIDIOC_G_AUDIO <VIDIOC_G_AUDIO>` for a description of struct
43 :c:type:`v4l2_audio`.
44
45
46 Return Value
47 ============
48
49 On success 0 is returned, on error -1 and the ``errno`` variable is set
50 appropriately. The generic error codes are described at the
51 :ref:`Generic Error Codes <gen-errors>` chapter.
52
53 EINVAL
54     The number of the audio input is out of bounds.