# This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet 1.620 -> 1.621 # drivers/usb/host/ohci-q.c 1.21 -> 1.22 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 02/09/09 david-b@pacbell.net 1.621 # [PATCH] [PATCH 2.5.33+] ohci and iso-in # # I added a bug in 2.5.23 when cleaning up something that # was broken ... it wasn't broken in quite the way I had # thought at the time! # # This fixes a problem some folk have reported recently # with ISO-IN, by masking a common non-error outcome. # # Please merge to Linus' tree, on top of the one patch # you already have queued. Thanks to Nemosoft for such # quick turnaround on testing! # -------------------------------------------- # diff -Nru a/drivers/usb/host/ohci-q.c b/drivers/usb/host/ohci-q.c --- a/drivers/usb/host/ohci-q.c Mon Sep 9 15:15:12 2002 +++ b/drivers/usb/host/ohci-q.c Mon Sep 9 15:15:12 2002 @@ -727,8 +727,12 @@ if (usb_pipeout (urb->pipe)) dlen = urb->iso_frame_desc [td->index].length; - else + else { + /* short reads are always OK for ISO */ + if (cc == TD_DATAUNDERRUN) + cc = TD_CC_NOERROR; dlen = tdPSW & 0x3ff; + } urb->actual_length += dlen; urb->iso_frame_desc [td->index].actual_length = dlen; urb->iso_frame_desc [td->index].status = cc_to_error [cc];