media: imon_raw: prevent "nonsensical timing event of duration 0"
authorSean Young <sean@mess.org>
Fri, 9 Aug 2019 22:31:08 +0000 (19:31 -0300)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Wed, 14 Aug 2019 08:06:04 +0000 (05:06 -0300)
Sometimes the device sends IR data which is all space, no pulses
whatsoever. Add the end of this the driver will put the rc device into
idle mode when it already is in idle mode. The following will be logged:

rc rc0: nonsensical timing event of duration 0
rc rc0: two consecutive events of type space

Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/rc/imon_raw.c

index e672399..d4aedcf 100644 (file)
@@ -85,7 +85,7 @@ static void imon_ir_data(struct imon *imon)
                offset = bit;
        } while (offset > 0);
 
-       if (packet_no == 0x0a) {
+       if (packet_no == 0x0a && !imon->rcdev->idle) {
                ir_raw_event_set_idle(imon->rcdev, true);
                ir_raw_event_handle(imon->rcdev);
        }