Subject:
|
One shot interrupt urb issue - usb-ohci.c
|
Newsgroups:
|
lugnet.robotics
|
Date:
|
Tue, 15 Oct 2002 13:59:18 GMT
|
Original-From:
|
P.C. Chan <pc.chan@!StopSpammers!alcatel.com>
|
Viewed:
|
1172 times
|
| |
| |
Dear USB development team,
In integrating of nqc and the legousbtower under linux, I found an
coding issue with usb-ohci shipped with the 2.4.19 kernel.
Usb-ohci always tries to requeue an interrupt urb on completion but if
the interval is 0, it is supposed to be single shot.
As a result the legousbtower would receive multiple completion callbacks
for a single single-shot interrupt urb. The transmission would not stop
until the urb is unlinked.
I have made the following temporary patch to address it.
--- usb-ohci.c.orig Mon Oct 14 23:13:36 2002
+++ usb-ohci.c Mon Oct 14 23:19:19 2002
@@ -486,6 +486,11 @@
usb_pipeout (urb->pipe)
? PCI_DMA_TODEVICE
: PCI_DMA_FROMDEVICE);
+ if (urb->interval == 0) {
+ urb_rm_priv (urb);
+ urb->complete (urb);
+ break;
+ }
urb->complete (urb);
/* implicitly requeued */
Would you please look into it.
Thank you,
P.C. Chan
--
MIME ATTACHMENTS DISCARDED:
1. Content-Type: text/plain;
name="usb-uhci.c.1.273.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="usb-uhci.c.1.273.diff"
Content-Length: 737
|
|
1 Message in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
Active threads in Robotics
|
|
|
|