USB: serial: fix Treo/Kyocera interrrupt-in urb context
authorJohan Hovold <jhovold@gmail.com>
Mon, 27 May 2013 12:44:37 +0000 (14:44 +0200)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 19 Jun 2013 01:16:49 +0000 (02:16 +0100)
commit 5f8e2c07d75967ee49a5da1d21ddf5f50d48cda0 upstream.

The first and second interrupt-in urbs are swapped for some Treo/Kyocera
devices, but the urb context was never updated with the new port.

Signed-off-by: Johan Hovold <jhovold@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/usb/serial/visor.c

index 1c11959..189a894 100644 (file)
@@ -600,6 +600,7 @@ static int treo_attach(struct usb_serial *serial)
                dest->bulk_in_endpointAddress = src->bulk_in_endpointAddress;\
                dest->bulk_in_buffer = src->bulk_in_buffer;             \
                dest->interrupt_in_urb = src->interrupt_in_urb;         \
+               dest->interrupt_in_urb->context = dest;                 \
                dest->interrupt_in_endpointAddress = \
                                        src->interrupt_in_endpointAddress;\
                dest->interrupt_in_buffer = src->interrupt_in_buffer;   \