Pārlūkot izejas kodu

[media] iguanair: fix receiver overflow

The Pioneer CU-700 remote causes receiver overflows if you hold down any
button. The remote does not send NEC IR repeats, it repeats the entire
NEC code after 20ms.

The iguanair hardware advertises an interval of 10 which just not enough;
with 100 URBs per second and at most 7 edges per URB, we handle at most
700 edges per second. The remote generates about 900.

Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Sean Young 13 gadi atpakaļ
vecāks
revīzija
640583836b
1 mainītis faili ar 2 papildinājumiem un 3 dzēšanām
  1. 2 3
      drivers/media/rc/iguanair.c

+ 2 - 3
drivers/media/rc/iguanair.c

@@ -484,9 +484,8 @@ static int __devinit iguanair_probe(struct usb_interface *intf,
 	init_completion(&ir->completion);
 
 	pipein = usb_rcvintpipe(udev, idesc->endpoint[0].desc.bEndpointAddress);
-	usb_fill_int_urb(ir->urb_in, udev, pipein, ir->buf_in,
-		MAX_PACKET_SIZE, iguanair_rx, ir,
-		idesc->endpoint[0].desc.bInterval);
+	usb_fill_int_urb(ir->urb_in, udev, pipein, ir->buf_in, MAX_PACKET_SIZE,
+							 iguanair_rx, ir, 1);
 	ir->urb_in->transfer_dma = ir->dma_in;
 	ir->urb_in->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;