Merge remote-tracking branch 'keys/keys-next'
[deliverable/linux.git] / Documentation / media / uapi / mediactl / media-func-ioctl.rst
CommitLineData
5377d91f
MH
1.. -*- coding: utf-8; mode: rst -*-
2
3.. _media-func-ioctl:
4
5*************
6media ioctl()
7*************
8
15e7d615 9Name
586027ce 10====
5377d91f 11
586027ce 12media-ioctl - Control a media device
5377d91f 13
15e7d615
MCC
14
15Synopsis
5377d91f
MH
16========
17
18.. code-block:: c
19
20 #include <sys/ioctl.h>
21
22
1b81f010 23.. c:function:: int ioctl( int fd, int request, void *argp )
5ccbb182 24 :name: mc-ioctl
586027ce 25
15e7d615 26Arguments
5377d91f
MH
27=========
28
29``fd``
5ccbb182 30 File descriptor returned by :c:func:`open() <mc-open>`.
5377d91f
MH
31
32``request``
33 Media ioctl request code as defined in the media.h header file, for
34 example MEDIA_IOC_SETUP_LINK.
35
36``argp``
37 Pointer to a request-specific structure.
38
39
15e7d615 40Description
5377d91f
MH
41===========
42
8c1cc62a
MCC
43The :ref:`ioctl() <media-func-ioctl>` function manipulates media device
44parameters. The argument ``fd`` must be an open file descriptor.
5377d91f
MH
45
46The ioctl ``request`` code specifies the media function to be called. It
47has encoded in it whether the argument is an input, output or read/write
48parameter, and the size of the argument ``argp`` in bytes.
49
50Macros and structures definitions specifying media ioctl requests and
51their parameters are located in the media.h header file. All media ioctl
52requests, their respective function and parameters are specified in
53:ref:`media-user-func`.
54
55
15e7d615 56Return Value
5377d91f
MH
57============
58
59On success 0 is returned, on error -1 and the ``errno`` variable is set
60appropriately. The generic error codes are described at the
61:ref:`Generic Error Codes <gen-errors>` chapter.
62
63Request-specific error codes are listed in the individual requests
64descriptions.
65
66When an ioctl that takes an output or read/write parameter fails, the
67parameter remains unmodified.
This page took 0.047699 seconds and 5 git commands to generate.