summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorSean Young2017-02-08 23:48:17 +0100
committerMauro Carvalho Chehab2017-03-24 12:23:18 +0100
commite8f4818895b3d7f34b3e5852bce77b3257a27ecc (patch)
treeb23c618fd76be5dea287069d979ee915971faaf0 /drivers
parent[media] rc: lirc keymap no longer makes any sense (diff)
downloadkernel-qcow2-linux-e8f4818895b3d7f34b3e5852bce77b3257a27ecc.tar.gz
kernel-qcow2-linux-e8f4818895b3d7f34b3e5852bce77b3257a27ecc.tar.xz
kernel-qcow2-linux-e8f4818895b3d7f34b3e5852bce77b3257a27ecc.zip
[media] lirc: advertise LIRC_CAN_GET_REC_RESOLUTION and improve
This feature was never set. The ioctl should fail if no resolution is set. Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/rc/ir-lirc-codec.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/media/rc/ir-lirc-codec.c b/drivers/media/rc/ir-lirc-codec.c
index 235d74adc3fd..de85f1d7ce43 100644
--- a/drivers/media/rc/ir-lirc-codec.c
+++ b/drivers/media/rc/ir-lirc-codec.c
@@ -263,6 +263,9 @@ static long ir_lirc_ioctl(struct file *filep, unsigned int cmd,
return 0;
case LIRC_GET_REC_RESOLUTION:
+ if (!dev->rx_resolution)
+ return -ENOTTY;
+
val = dev->rx_resolution;
break;
@@ -367,8 +370,11 @@ static int ir_lirc_register(struct rc_dev *dev)
if (rc)
goto rbuf_init_failed;
- if (dev->driver_type != RC_DRIVER_IR_RAW_TX)
+ if (dev->driver_type != RC_DRIVER_IR_RAW_TX) {
features |= LIRC_CAN_REC_MODE2;
+ if (dev->rx_resolution)
+ features |= LIRC_CAN_GET_REC_RESOLUTION;
+ }
if (dev->tx_ir) {
features |= LIRC_CAN_SEND_PULSE;
if (dev->s_tx_mask)