OSDN Git Service

media: lirc: LIRC_GET_REC_RESOLUTION should return microseconds
authorSean Young <sean@mess.org>
Fri, 7 Jul 2017 21:49:18 +0000 (18:49 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 11 Aug 2017 16:08:50 +0000 (09:08 -0700)
commit 9f5039ba440e499d85c29b1ddbc3cbc9dc90e44b upstream.

Since commit e8f4818895b3 ("[media] lirc: advertise
LIRC_CAN_GET_REC_RESOLUTION and improve") lircd uses the ioctl
LIRC_GET_REC_RESOLUTION to determine the shortest pulse or space that
the hardware can detect. This breaks decoding in lirc because lircd
expects the answer in microseconds, but nanoseconds is returned.

Reported-by: Derek <user.vdr@gmail.com>
Tested-by: Derek <user.vdr@gmail.com>
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/rc/ir-lirc-codec.c

index a32659f..efc21b1 100644 (file)
@@ -254,7 +254,7 @@ static long ir_lirc_ioctl(struct file *filep, unsigned int cmd,
                return 0;
 
        case LIRC_GET_REC_RESOLUTION:
-               val = dev->rx_resolution;
+               val = dev->rx_resolution / 1000;
                break;
 
        case LIRC_SET_WIDEBAND_RECEIVER: