linux/Documentation/userspace-api/media/cec/cec-func-ioctl.rst
<<
>>
Prefs
   1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
   2.. c:namespace:: CEC
   3
   4.. _cec-func-ioctl:
   5
   6***********
   7cec ioctl()
   8***********
   9
  10Name
  11====
  12
  13cec-ioctl - Control a cec device
  14
  15Synopsis
  16========
  17
  18.. code-block:: c
  19
  20    #include <sys/ioctl.h>
  21
  22``int ioctl(int fd, int request, void *argp)``
  23
  24Arguments
  25=========
  26
  27``fd``
  28    File descriptor returned by :c:func:`open()`.
  29
  30``request``
  31    CEC ioctl request code as defined in the cec.h header file, for
  32    example :ref:`CEC_ADAP_G_CAPS <CEC_ADAP_G_CAPS>`.
  33
  34``argp``
  35    Pointer to a request-specific structure.
  36
  37Description
  38===========
  39
  40The :c:func:`ioctl()` function manipulates cec device parameters. The
  41argument ``fd`` must be an open file descriptor.
  42
  43The ioctl ``request`` code specifies the cec function to be called. It
  44has encoded in it whether the argument is an input, output or read/write
  45parameter, and the size of the argument ``argp`` in bytes.
  46
  47Macros and structures definitions specifying cec ioctl requests and
  48their parameters are located in the cec.h header file. All cec ioctl
  49requests, their respective function and parameters are specified in
  50:ref:`cec-user-func`.
  51
  52Return Value
  53============
  54
  55On success 0 is returned, on error -1 and the ``errno`` variable is set
  56appropriately. The generic error codes are described at the
  57:ref:`Generic Error Codes <gen-errors>` chapter.
  58
  59Request-specific error codes are listed in the individual requests
  60descriptions.
  61
  62When an ioctl that takes an output or read/write parameter fails, the
  63parameter remains unmodified.
  64