>From dfd1bd8275a6287068fda370ac49a8549e660674 Mon Sep 17 00:00:00 2001 From: Sean Young <sean@xxxxxxxx> Date: Fri, 7 Jul 2017 18:49:18 -0300 Subject: [PATCH] media: lirc: LIRC_GET_REC_RESOLUTION should return microseconds 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. Cc: <stable@xxxxxxxxxxxxxxx> # v2.6.36+ Reported-by: Derek <user.vdr@xxxxxxxxx> Tested-by: Derek <user.vdr@xxxxxxxxx> Signed-off-by: Sean Young <sean@xxxxxxxx> Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxxx> --- drivers/media/rc/ir-lirc-codec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/media/rc/ir-lirc-codec.c b/drivers/media/rc/ir-lirc-codec.c index a32659fcd266..efc21b1da211 100644 --- a/drivers/media/rc/ir-lirc-codec.c +++ b/drivers/media/rc/ir-lirc-codec.c @@ -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: -- 2.11.0 On Mon, Aug 07, 2017 at 03:14:17PM -0700, gregkh@xxxxxxxxxxxxxxxxxxx wrote: > > The patch below does not apply to the 4.9-stable tree. > If someone wants it applied there, or to any other stable or longterm > tree, then please email the backport, including the original git commit > id to <stable@xxxxxxxxxxxxxxx>. > > thanks, > > greg k-h > > ------------------ original commit in Linus's tree ------------------ > > >From 9f5039ba440e499d85c29b1ddbc3cbc9dc90e44b Mon Sep 17 00:00:00 2001 > From: Sean Young <sean@xxxxxxxx> > Date: Fri, 7 Jul 2017 18:49:18 -0300 > Subject: [PATCH] media: lirc: LIRC_GET_REC_RESOLUTION should return > microseconds > > 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. > > Cc: <stable@xxxxxxxxxxxxxxx> # v2.6.36+ > Reported-by: Derek <user.vdr@xxxxxxxxx> > Tested-by: Derek <user.vdr@xxxxxxxxx> > Signed-off-by: Sean Young <sean@xxxxxxxx> > Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxxx> > > diff --git a/drivers/media/rc/ir-lirc-codec.c b/drivers/media/rc/ir-lirc-codec.c > index a30af91710fe..d2223c04e9ad 100644 > --- a/drivers/media/rc/ir-lirc-codec.c > +++ b/drivers/media/rc/ir-lirc-codec.c > @@ -266,7 +266,7 @@ static long ir_lirc_ioctl(struct file *filep, unsigned int cmd, > if (!dev->rx_resolution) > return -ENOTTY; > > - val = dev->rx_resolution; > + val = dev->rx_resolution / 1000; > break; > > case LIRC_SET_WIDEBAND_RECEIVER: