Linux 4.11-rc6
[linux/fpc-iii.git] / Documentation / media / uapi / rc / lirc-get-features.rst
blob79e07b4d44d681e04f2679ffb608d3943ecba905
1 .. -*- coding: utf-8; mode: rst -*-
3 .. _lirc_get_features:
5 ***********************
6 ioctl LIRC_GET_FEATURES
7 ***********************
9 Name
10 ====
12 LIRC_GET_FEATURES - Get the underlying hardware device's features
14 Synopsis
15 ========
17 .. c:function:: int ioctl( int fd, LIRC_GET_FEATURES, __u32 *features)
18     :name: LIRC_GET_FEATURES
20 Arguments
21 =========
23 ``fd``
24     File descriptor returned by open().
26 ``features``
27     Bitmask with the LIRC features.
30 Description
31 ===========
34 Get the underlying hardware device's features. If a driver does not
35 announce support of certain features, calling of the corresponding ioctls
36 is undefined.
38 LIRC features
39 =============
41 .. _LIRC-CAN-REC-RAW:
43 ``LIRC_CAN_REC_RAW``
45     Unused. Kept just to avoid breaking uAPI.
47 .. _LIRC-CAN-REC-PULSE:
49 ``LIRC_CAN_REC_PULSE``
51     The driver is capable of receiving using
52     :ref:`LIRC_MODE_PULSE <lirc-mode-pulse>`.
54 .. _LIRC-CAN-REC-MODE2:
56 ``LIRC_CAN_REC_MODE2``
58     The driver is capable of receiving using
59     :ref:`LIRC_MODE_MODE2 <lirc-mode-MODE2>`.
61 .. _LIRC-CAN-REC-LIRCCODE:
63 ``LIRC_CAN_REC_LIRCCODE``
65     The driver is capable of receiving using
66     :ref:`LIRC_MODE_LIRCCODE <lirc-mode-LIRCCODE>`.
68 .. _LIRC-CAN-SET-SEND-CARRIER:
70 ``LIRC_CAN_SET_SEND_CARRIER``
72     The driver supports changing the modulation frequency via
73     :ref:`ioctl LIRC_SET_SEND_CARRIER <LIRC_SET_SEND_CARRIER>`.
75 .. _LIRC-CAN-SET-SEND-DUTY-CYCLE:
77 ``LIRC_CAN_SET_SEND_DUTY_CYCLE``
79     The driver supports changing the duty cycle using
80     :ref:`ioctl LIRC_SET_SEND_DUTY_CYCLE <LIRC_SET_SEND_DUTY_CYCLE>`.
82 .. _LIRC-CAN-SET-TRANSMITTER-MASK:
84 ``LIRC_CAN_SET_TRANSMITTER_MASK``
86     The driver supports changing the active transmitter(s) using
87     :ref:`ioctl LIRC_SET_TRANSMITTER_MASK <LIRC_SET_TRANSMITTER_MASK>`.
89 .. _LIRC-CAN-SET-REC-CARRIER:
91 ``LIRC_CAN_SET_REC_CARRIER``
93     The driver supports setting the receive carrier frequency using
94     :ref:`ioctl LIRC_SET_REC_CARRIER <LIRC_SET_REC_CARRIER>`.
96 .. _LIRC-CAN-SET-REC-DUTY-CYCLE-RANGE:
98 ``LIRC_CAN_SET_REC_DUTY_CYCLE_RANGE``
100     Unused. Kept just to avoid breaking uAPI.
102 .. _LIRC-CAN-SET-REC-CARRIER-RANGE:
104 ``LIRC_CAN_SET_REC_CARRIER_RANGE``
106     The driver supports
107     :ref:`ioctl LIRC_SET_REC_CARRIER_RANGE <LIRC_SET_REC_CARRIER_RANGE>`.
109 .. _LIRC-CAN-GET-REC-RESOLUTION:
111 ``LIRC_CAN_GET_REC_RESOLUTION``
113     The driver supports
114     :ref:`ioctl LIRC_GET_REC_RESOLUTION <LIRC_GET_REC_RESOLUTION>`.
116 .. _LIRC-CAN-SET-REC-TIMEOUT:
118 ``LIRC_CAN_SET_REC_TIMEOUT``
120     The driver supports
121     :ref:`ioctl LIRC_SET_REC_TIMEOUT <LIRC_SET_REC_TIMEOUT>`.
123 .. _LIRC-CAN-SET-REC-FILTER:
125 ``LIRC_CAN_SET_REC_FILTER``
127     Unused. Kept just to avoid breaking uAPI.
129 .. _LIRC-CAN-MEASURE-CARRIER:
131 ``LIRC_CAN_MEASURE_CARRIER``
133     The driver supports measuring of the modulation frequency using
134     :ref:`ioctl LIRC_SET_MEASURE_CARRIER_MODE <LIRC_SET_MEASURE_CARRIER_MODE>`.
136 .. _LIRC-CAN-USE-WIDEBAND-RECEIVER:
138 ``LIRC_CAN_USE_WIDEBAND_RECEIVER``
140     The driver supports learning mode using
141     :ref:`ioctl LIRC_SET_WIDEBAND_RECEIVER <LIRC_SET_WIDEBAND_RECEIVER>`.
143 .. _LIRC-CAN-NOTIFY-DECODE:
145 ``LIRC_CAN_NOTIFY_DECODE``
147     Unused. Kept just to avoid breaking uAPI.
149 .. _LIRC-CAN-SEND-RAW:
151 ``LIRC_CAN_SEND_RAW``
153     Unused. Kept just to avoid breaking uAPI.
155 .. _LIRC-CAN-SEND-PULSE:
157 ``LIRC_CAN_SEND_PULSE``
159     The driver supports sending using :ref:`LIRC_MODE_PULSE <lirc-mode-pulse>`.
161 .. _LIRC-CAN-SEND-MODE2:
163 ``LIRC_CAN_SEND_MODE2``
165     The driver supports sending using :ref:`LIRC_MODE_MODE2 <lirc-mode-mode2>`.
167 .. _LIRC-CAN-SEND-LIRCCODE:
169 ``LIRC_CAN_SEND_LIRCCODE``
171     The driver supports sending codes (also called as IR blasting or IR TX).
174 Return Value
175 ============
177 On success 0 is returned, on error -1 and the ``errno`` variable is set
178 appropriately. The generic error codes are described at the
179 :ref:`Generic Error Codes <gen-errors>` chapter.