Opened 10 years ago
Closed 8 years ago
#10915 closed bug (fixed)
UHCI Short Packet Detect Not Enabled for Control Pipes
Reported by: | akshay1994 | Owned by: | phoudoin |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | Drivers/USB/UHCI | Version: | R1/Development |
Keywords: | USB UHCI | Cc: | akshay1994.leo@… |
Blocked By: | Blocking: | ||
Platform: | All |
Description (last modified by )
UHCI Short Packet Detect (SPD) is not enabled for Control Pipes. Since, while processing transfers in the Finish-Thread, we check for this, before checking for a short packet, short packet control transfers would hang indefinitely, always coming out as Active, although the Host Controller has retired them.
You can repeat this behaviour, by making a control transfer request, asking for any descriptor, with length set to a value greater than the length of the descriptor (atleast by 7 in my case, else the next TD is status stage, and it succeeds).
Attachments (1)
Change History (11)
by , 10 years ago
Attachment: | 0001-Fix-UHCI-Short-Packet-Transfers.patch added |
---|
comment:1 by , 10 years ago
patch: | 0 → 1 |
---|
comment:2 by , 10 years ago
comment:3 by , 10 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:5 by , 10 years ago
This patch stalled all UHCI transfers, previously. I am updating my source tree. Will check and respond at the earliest :P
comment:6 by , 10 years ago
Description: | modified (diff) |
---|
Well, I tested it before applying and my USB seems to still be working. I did more extensive tests with avrdude yesterday and it doesn't lockup like it did before anymore, however there are some other problems. Sometimes avrdude will fail to enumerate my programmer, and sometimes it will fail during programming, leaving the target chip in an unusable state with invalid fuse values, so things aren't perfect yet, but already better than without the patch.
comment:7 by , 10 years ago
Can you provide the logs for the case when it failed? Did libusb give any warning or error?
comment:8 by , 10 years ago
Component: | Drivers/USB → Drivers/USB/UHCI |
---|
Filtering UHCI tickets from Drivers/USB to Drivers/USB/UHCI.
comment:9 by , 8 years ago
Description: | modified (diff) |
---|
The patch in this ticket was applied. Can it be closed, then?
comment:10 by , 8 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
There is some problem with the patch. It stalls all further transfers. I'm looking into it. :)