This feature was never set. The ioctl should fail if no resolution
is set.

Signed-off-by: Sean Young <s...@mess.org>
---
 drivers/media/rc/ir-lirc-codec.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/media/rc/ir-lirc-codec.c b/drivers/media/rc/ir-lirc-codec.c
index 235d74a..de85f1d 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)
-- 
2.9.3

Reply via email to