175 lines · plain
1.. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later2.. c:namespace:: RC3 4.. _lirc_get_features:5 6***********************7ioctl LIRC_GET_FEATURES8***********************9 10Name11====12 13LIRC_GET_FEATURES - Get the underlying hardware device's features14 15Synopsis16========17 18.. c:macro:: LIRC_GET_FEATURES19 20``int ioctl(int fd, LIRC_GET_FEATURES, __u32 *features)``21 22Arguments23=========24 25``fd``26 File descriptor returned by open().27 28``features``29 Bitmask with the LIRC features.30 31Description32===========33 34Get the underlying hardware device's features. If a driver does not35announce support of certain features, calling of the corresponding ioctls36is undefined.37 38LIRC features39=============40 41.. _LIRC-CAN-REC-RAW:42 43``LIRC_CAN_REC_RAW``44 45 Unused. Kept just to avoid breaking uAPI.46 47.. _LIRC-CAN-REC-PULSE:48 49``LIRC_CAN_REC_PULSE``50 51 Unused. Kept just to avoid breaking uAPI.52 :ref:`LIRC_MODE_PULSE <lirc-mode-pulse>` can only be used for transmitting.53 54.. _LIRC-CAN-REC-MODE2:55 56``LIRC_CAN_REC_MODE2``57 58 This is raw IR driver for receiving. This means that59 :ref:`LIRC_MODE_MODE2 <lirc-mode-MODE2>` is used. This also implies60 that :ref:`LIRC_MODE_SCANCODE <lirc-mode-SCANCODE>` is also supported,61 as long as the kernel is recent enough. Use the62 :ref:`lirc_set_rec_mode` to switch modes.63 64.. _LIRC-CAN-REC-LIRCCODE:65 66``LIRC_CAN_REC_LIRCCODE``67 68 Unused. Kept just to avoid breaking uAPI.69 70.. _LIRC-CAN-REC-SCANCODE:71 72``LIRC_CAN_REC_SCANCODE``73 74 This is a scancode driver for receiving. This means that75 :ref:`LIRC_MODE_SCANCODE <lirc-mode-SCANCODE>` is used.76 77.. _LIRC-CAN-SET-SEND-CARRIER:78 79``LIRC_CAN_SET_SEND_CARRIER``80 81 The driver supports changing the modulation frequency via82 :ref:`ioctl LIRC_SET_SEND_CARRIER <LIRC_SET_SEND_CARRIER>`.83 84.. _LIRC-CAN-SET-SEND-DUTY-CYCLE:85 86``LIRC_CAN_SET_SEND_DUTY_CYCLE``87 88 The driver supports changing the duty cycle using89 :ref:`ioctl LIRC_SET_SEND_DUTY_CYCLE <LIRC_SET_SEND_DUTY_CYCLE>`.90 91.. _LIRC-CAN-SET-TRANSMITTER-MASK:92 93``LIRC_CAN_SET_TRANSMITTER_MASK``94 95 The driver supports changing the active transmitter(s) using96 :ref:`ioctl LIRC_SET_TRANSMITTER_MASK <LIRC_SET_TRANSMITTER_MASK>`.97 98.. _LIRC-CAN-SET-REC-CARRIER:99 100``LIRC_CAN_SET_REC_CARRIER``101 102 The driver supports setting the receive carrier frequency using103 :ref:`ioctl LIRC_SET_REC_CARRIER <LIRC_SET_REC_CARRIER>`.104 105.. _LIRC-CAN-SET-REC-CARRIER-RANGE:106 107``LIRC_CAN_SET_REC_CARRIER_RANGE``108 109 The driver supports110 :ref:`ioctl LIRC_SET_REC_CARRIER_RANGE <LIRC_SET_REC_CARRIER_RANGE>`.111 112.. _LIRC-CAN-GET-REC-RESOLUTION:113 114``LIRC_CAN_GET_REC_RESOLUTION``115 116 The driver supports117 :ref:`ioctl LIRC_GET_REC_RESOLUTION <LIRC_GET_REC_RESOLUTION>`.118 119.. _LIRC-CAN-SET-REC-TIMEOUT:120 121``LIRC_CAN_SET_REC_TIMEOUT``122 123 The driver supports124 :ref:`ioctl LIRC_SET_REC_TIMEOUT <LIRC_SET_REC_TIMEOUT>`.125 126.. _LIRC-CAN-MEASURE-CARRIER:127 128``LIRC_CAN_MEASURE_CARRIER``129 130 The driver supports measuring of the modulation frequency using131 :ref:`ioctl LIRC_SET_MEASURE_CARRIER_MODE <LIRC_SET_MEASURE_CARRIER_MODE>`.132 133.. _LIRC-CAN-USE-WIDEBAND-RECEIVER:134 135``LIRC_CAN_USE_WIDEBAND_RECEIVER``136 137 The driver supports learning mode using138 :ref:`ioctl LIRC_SET_WIDEBAND_RECEIVER <LIRC_SET_WIDEBAND_RECEIVER>`.139 140.. _LIRC-CAN-SEND-RAW:141 142``LIRC_CAN_SEND_RAW``143 144 Unused. Kept just to avoid breaking uAPI.145 146.. _LIRC-CAN-SEND-PULSE:147 148``LIRC_CAN_SEND_PULSE``149 150 The driver supports sending (also called as IR blasting or IR TX) using151 :ref:`LIRC_MODE_PULSE <lirc-mode-pulse>`. This implies that152 :ref:`LIRC_MODE_SCANCODE <lirc-mode-SCANCODE>` is also supported for153 transmit, as long as the kernel is recent enough. Use the154 :ref:`lirc_set_send_mode` to switch modes.155 156.. _LIRC-CAN-SEND-MODE2:157 158``LIRC_CAN_SEND_MODE2``159 160 Unused. Kept just to avoid breaking uAPI.161 :ref:`LIRC_MODE_MODE2 <lirc-mode-mode2>` can only be used for receiving.162 163.. _LIRC-CAN-SEND-LIRCCODE:164 165``LIRC_CAN_SEND_LIRCCODE``166 167 Unused. Kept just to avoid breaking uAPI.168 169Return Value170============171 172On success 0 is returned, on error -1 and the ``errno`` variable is set173appropriately. The generic error codes are described at the174:ref:`Generic Error Codes <gen-errors>` chapter.175