ref: d7ade692c8c3c96bae6828f63afb1b19765b5589
parent: 8606fc8f29fe5b419b74e051c3c8b226ab29c399
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Wed Feb 10 14:52:00 EST 2021
nusb: don't create rw iso endpoints (by Michael Forney) There may be two iso endpoints with the same ID if it is asynchronous or adaptive (one for data, one for feedback), and rw iso endpoints are unusable (error out with "iso i/o is half-duplex").
--- a/sys/src/cmd/nusb/lib/parse.c
+++ b/sys/src/cmd/nusb/lib/parse.c
@@ -127,7 +127,7 @@
ep = mkep(d, epid);
ep->dir = dir;
}else if((ep->addr & 0x80) != (addr & 0x80)){
- if(ep->type == type)
+ if(ep->type == type && type != Eiso)
ep->dir = Eboth;
else {
/*