diff mbox

[06/13,media] iguanair: reset the IR state after rx overflow or receiver enable

Message ID 1344862791-30352-6-git-send-email-sean@mess.org (mailing list archive)
State New, archived
Headers show

Commit Message

Sean Young Aug. 13, 2012, 12:59 p.m. UTC
Signed-off-by: Sean Young <sean@mess.org>
---
 drivers/media/rc/iguanair.c | 4 ++++
 1 file changed, 4 insertions(+)
diff mbox

Patch

diff --git a/drivers/media/rc/iguanair.c b/drivers/media/rc/iguanair.c
index a6a19eb..9810008 100644
--- a/drivers/media/rc/iguanair.c
+++ b/drivers/media/rc/iguanair.c
@@ -124,6 +124,7 @@  static void process_ir_data(struct iguanair *ir, unsigned len)
 			break;
 		case CMD_RX_OVERFLOW:
 			dev_warn(ir->dev, "receive overflow\n");
+			ir_raw_event_reset(ir->rc);
 			break;
 		default:
 			dev_warn(ir->dev, "control code %02x received\n",
@@ -256,6 +257,9 @@  static int iguanair_receiver(struct iguanair *ir, bool enable)
 	struct packet packet = { 0, DIR_OUT, enable ?
 				CMD_RECEIVER_ON : CMD_RECEIVER_OFF };
 
+	if (enable)
+		ir_raw_event_reset(ir->rc);
+
 	return iguanair_send(ir, &packet, sizeof(packet));
 }