media: igorplugusb: receiver overflow should be reported
authorSean Young <sean@mess.org>
Tue, 30 Nov 2021 22:58:19 +0000 (23:58 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 27 Jan 2022 09:54:16 +0000 (10:54 +0100)
[ Upstream commit 8fede658e7ddb605bbd68ed38067ddb0af033db4 ]

Without this, some IR will be missing mid-stream and we might decode
something which never really occurred.

Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/media/rc/igorplugusb.c

index effaa5751d6c98099cd6cb745ddbcb40411eb889..3e9988ee785f0cf4f6a3804c253a8defb53f3586 100644 (file)
@@ -64,9 +64,11 @@ static void igorplugusb_irdata(struct igorplugusb *ir, unsigned len)
        if (start >= len) {
                dev_err(ir->dev, "receive overflow invalid: %u", overflow);
        } else {
-               if (overflow > 0)
+               if (overflow > 0) {
                        dev_warn(ir->dev, "receive overflow, at least %u lost",
                                                                overflow);
+                       ir_raw_event_reset(ir->rc);
+               }
 
                do {
                        rawir.duration = ir->buf_in[i] * 85;