6.5.3. ioctl LIRC_GET_FEATURES¶
6.5.3.1. 名称¶
LIRC_GET_FEATURES - 获取底层硬件设备的特性
6.5.3.2. 概要¶
-
LIRC_GET_FEATURES¶
int ioctl(int fd, LIRC_GET_FEATURES, __u32 *features)
6.5.3.3. 参数¶
fd
open() 返回的文件描述符。
features
带有 LIRC 特性的位掩码。
6.5.3.4. 描述¶
获取底层硬件设备的特性。如果驱动程序未声明对某些特性的支持,则调用相应的 ioctl 是未定义的。
6.5.3.5. LIRC 特性¶
LIRC_CAN_REC_RAW
未使用。保留只是为了避免破坏 uAPI。
LIRC_CAN_REC_PULSE
未使用。保留只是为了避免破坏 uAPI。 LIRC_MODE_PULSE 只能用于发送。
LIRC_CAN_REC_MODE2
这是用于接收的原始红外驱动程序。这意味着使用 LIRC_MODE_MODE2。这也意味着支持 LIRC_MODE_SCANCODE,只要内核足够新即可。使用 ioctl LIRC_GET_REC_MODE 和 LIRC_SET_REC_MODE 切换模式。
LIRC_CAN_REC_LIRCCODE
未使用。保留只是为了避免破坏 uAPI。
LIRC_CAN_REC_SCANCODE
这是用于接收的扫描码驱动程序。这意味着使用 LIRC_MODE_SCANCODE。
LIRC_CAN_SET_SEND_CARRIER
驱动程序支持通过 ioctl LIRC_SET_SEND_CARRIER 更改调制频率。
LIRC_CAN_SET_SEND_DUTY_CYCLE
驱动程序支持使用 ioctl LIRC_SET_SEND_DUTY_CYCLE 更改占空比。
LIRC_CAN_SET_TRANSMITTER_MASK
驱动程序支持使用 ioctl LIRC_SET_TRANSMITTER_MASK 更改活动发射器。
LIRC_CAN_SET_REC_CARRIER
驱动程序支持使用 ioctl LIRC_SET_REC_CARRIER 设置接收载波频率。
LIRC_CAN_SET_REC_CARRIER_RANGE
驱动程序支持 ioctl LIRC_SET_REC_CARRIER_RANGE。
LIRC_CAN_GET_REC_RESOLUTION
驱动程序支持 ioctl LIRC_GET_REC_RESOLUTION。
LIRC_CAN_SET_REC_TIMEOUT
驱动程序支持 ioctl LIRC_SET_REC_TIMEOUT。
LIRC_CAN_MEASURE_CARRIER
驱动程序支持使用 ioctl LIRC_SET_MEASURE_CARRIER_MODE 测量调制频率。
LIRC_CAN_USE_WIDEBAND_RECEIVER
驱动程序支持使用 ioctl LIRC_SET_WIDEBAND_RECEIVER 学习模式。
LIRC_CAN_SEND_RAW
未使用。保留只是为了避免破坏 uAPI。
LIRC_CAN_SEND_PULSE
驱动程序支持使用 LIRC_MODE_PULSE 发送(也称为 IR blasting 或 IR TX)。这也意味着支持 LIRC_MODE_SCANCODE 进行传输,只要内核足够新即可。使用 ioctls LIRC_GET_SEND_MODE 和 LIRC_SET_SEND_MODE 切换模式。
LIRC_CAN_SEND_MODE2
未使用。保留只是为了避免破坏 uAPI。 LIRC_MODE_MODE2 只能用于接收。
LIRC_CAN_SEND_LIRCCODE
未使用。保留只是为了避免破坏 uAPI。
6.5.3.6. 返回值¶
成功时返回 0,出错时返回 -1,并适当设置 errno
变量。 常见的错误代码在 通用错误代码 章节中描述。