ChangeSet 1.808.2.17, 2002/10/28 11:48:30-08:00, [EMAIL PROTECTED]
fix the usb image drivers due to interrupt urb no automatic resubmission change to the
usb core.
diff -Nru a/drivers/usb/image/scanner.c b/drivers/usb/image/scanner.c
--- a/drivers/usb/image/scanner.c Mon Oct 28 13:53:15 2002
+++ b/drivers/usb/image/scanner.c Mon Oct 28 13:53:15 2002
@@ -364,18 +364,33 @@
struct scn_usb_data *scn;
unsigned char *data;
+ int status;
+
scn = urb->context;
data = &scn->button;
data += 0; /* Keep gcc from complaining about unused var */
- if (urb->status) {
+ switch (urb->status) {
+ case 0:
+ /* success */
+ break;
+ case -ECONNRESET:
+ case -ENOENT:
+ case -ESHUTDOWN:
+ /* this urb is terminated, clean up */
+ dbg("%s - urb shutting down with status: %d", __FUNCTION__,
+urb->status);
return;
+ default:
+ dbg("%s - nonzero urb status received: %d", __FUNCTION__, urb->status);
}
dbg("irq_scanner(%d): data:%x", scn->scn_minor, *data);
- return;
+ status = usb_submit_urb (urb, GFP_ATOMIC);
+ if (status)
+ err ("%s - usb_submit_urb failed with result %d",
+ __FUNCTION__, status);
}
static int
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel