| .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later | |
| .. c:namespace:: RC | |
| .. _lirc_get_features: | |
| *********************** | |
| ioctl LIRC_GET_FEATURES | |
| *********************** | |
| Name | |
| ==== | |
| LIRC_GET_FEATURES - Get the underlying hardware device's features | |
| Synopsis | |
| ======== | |
| .. c:macro:: LIRC_GET_FEATURES | |
| ``int ioctl(int fd, LIRC_GET_FEATURES, __u32 *features)`` | |
| Arguments | |
| ========= | |
| ``fd`` | |
| File descriptor returned by open(). | |
| ``features`` | |
| Bitmask with the LIRC features. | |
| Description | |
| =========== | |
| Get the underlying hardware device's features. If a driver does not | |
| announce support of certain features, calling of the corresponding ioctls | |
| is undefined. | |
| LIRC features | |
| ============= | |
| .. _LIRC-CAN-REC-RAW: | |
| ``LIRC_CAN_REC_RAW`` | |
| Unused. Kept just to avoid breaking uAPI. | |
| .. _LIRC-CAN-REC-PULSE: | |
| ``LIRC_CAN_REC_PULSE`` | |
| Unused. Kept just to avoid breaking uAPI. | |
| :ref:`LIRC_MODE_PULSE <lirc-mode-pulse>` can only be used for transmitting. | |
| .. _LIRC-CAN-REC-MODE2: | |
| ``LIRC_CAN_REC_MODE2`` | |
| This is raw IR driver for receiving. This means that | |
| :ref:`LIRC_MODE_MODE2 <lirc-mode-MODE2>` is used. This also implies | |
| that :ref:`LIRC_MODE_SCANCODE <lirc-mode-SCANCODE>` is also supported, | |
| as long as the kernel is recent enough. Use the | |
| :ref:`lirc_set_rec_mode` to switch modes. | |
| .. _LIRC-CAN-REC-LIRCCODE: | |
| ``LIRC_CAN_REC_LIRCCODE`` | |
| Unused. Kept just to avoid breaking uAPI. | |
| .. _LIRC-CAN-REC-SCANCODE: | |
| ``LIRC_CAN_REC_SCANCODE`` | |
| This is a scancode driver for receiving. This means that | |
| :ref:`LIRC_MODE_SCANCODE <lirc-mode-SCANCODE>` is used. | |
| .. _LIRC-CAN-SET-SEND-CARRIER: | |
| ``LIRC_CAN_SET_SEND_CARRIER`` | |
| The driver supports changing the modulation frequency via | |
| :ref:`ioctl LIRC_SET_SEND_CARRIER <LIRC_SET_SEND_CARRIER>`. | |
| .. _LIRC-CAN-SET-SEND-DUTY-CYCLE: | |
| ``LIRC_CAN_SET_SEND_DUTY_CYCLE`` | |
| The driver supports changing the duty cycle using | |
| :ref:`ioctl LIRC_SET_SEND_DUTY_CYCLE <LIRC_SET_SEND_DUTY_CYCLE>`. | |
| .. _LIRC-CAN-SET-TRANSMITTER-MASK: | |
| ``LIRC_CAN_SET_TRANSMITTER_MASK`` | |
| The driver supports changing the active transmitter(s) using | |
| :ref:`ioctl LIRC_SET_TRANSMITTER_MASK <LIRC_SET_TRANSMITTER_MASK>`. | |
| .. _LIRC-CAN-SET-REC-CARRIER: | |
| ``LIRC_CAN_SET_REC_CARRIER`` | |
| The driver supports setting the receive carrier frequency using | |
| :ref:`ioctl LIRC_SET_REC_CARRIER <LIRC_SET_REC_CARRIER>`. | |
| .. _LIRC-CAN-SET-REC-CARRIER-RANGE: | |
| ``LIRC_CAN_SET_REC_CARRIER_RANGE`` | |
| The driver supports | |
| :ref:`ioctl LIRC_SET_REC_CARRIER_RANGE <LIRC_SET_REC_CARRIER_RANGE>`. | |
| .. _LIRC-CAN-GET-REC-RESOLUTION: | |
| ``LIRC_CAN_GET_REC_RESOLUTION`` | |
| The driver supports | |
| :ref:`ioctl LIRC_GET_REC_RESOLUTION <LIRC_GET_REC_RESOLUTION>`. | |
| .. _LIRC-CAN-SET-REC-TIMEOUT: | |
| ``LIRC_CAN_SET_REC_TIMEOUT`` | |
| The driver supports | |
| :ref:`ioctl LIRC_SET_REC_TIMEOUT <LIRC_SET_REC_TIMEOUT>`. | |
| .. _LIRC-CAN-MEASURE-CARRIER: | |
| ``LIRC_CAN_MEASURE_CARRIER`` | |
| The driver supports measuring of the modulation frequency using | |
| :ref:`ioctl LIRC_SET_MEASURE_CARRIER_MODE <LIRC_SET_MEASURE_CARRIER_MODE>`. | |
| .. _LIRC-CAN-USE-WIDEBAND-RECEIVER: | |
| ``LIRC_CAN_USE_WIDEBAND_RECEIVER`` | |
| The driver supports learning mode using | |
| :ref:`ioctl LIRC_SET_WIDEBAND_RECEIVER <LIRC_SET_WIDEBAND_RECEIVER>`. | |
| .. _LIRC-CAN-SEND-RAW: | |
| ``LIRC_CAN_SEND_RAW`` | |
| Unused. Kept just to avoid breaking uAPI. | |
| .. _LIRC-CAN-SEND-PULSE: | |
| ``LIRC_CAN_SEND_PULSE`` | |
| The driver supports sending (also called as IR blasting or IR TX) using | |
| :ref:`LIRC_MODE_PULSE <lirc-mode-pulse>`. This implies that | |
| :ref:`LIRC_MODE_SCANCODE <lirc-mode-SCANCODE>` is also supported for | |
| transmit, as long as the kernel is recent enough. Use the | |
| :ref:`lirc_set_send_mode` to switch modes. | |
| .. _LIRC-CAN-SEND-MODE2: | |
| ``LIRC_CAN_SEND_MODE2`` | |
| Unused. Kept just to avoid breaking uAPI. | |
| :ref:`LIRC_MODE_MODE2 <lirc-mode-mode2>` can only be used for receiving. | |
| .. _LIRC-CAN-SEND-LIRCCODE: | |
| ``LIRC_CAN_SEND_LIRCCODE`` | |
| Unused. Kept just to avoid breaking uAPI. | |
| Return Value | |
| ============ | |
| On success 0 is returned, on error -1 and the ``errno`` variable is set | |
| appropriately. The generic error codes are described at the | |
| :ref:`Generic Error Codes <gen-errors>` chapter. |