summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2017-08-11 01:08:13 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2017-08-11 01:08:13 +0200
commit7dab4923247b4d07e63bdea80f6063a778d07d12 (patch)
tree9d34e1b351ad90727645574e0353f110405cc115
parent153793714ec92bd3a3aa4a3b2d26861c54dd03c4 (diff)
devusb: superspeed bandwidth allocation handled by controller, skip usbload() calculation
with xhci, bandwidth allocations are handled by the controller and there are various speed settings possible that currently not exposed in the Udev. so just keep usbload() as it is for usb2 and keep ep->load as zero for superspeed.
-rw-r--r--sys/src/9/port/devusb.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/sys/src/9/port/devusb.c b/sys/src/9/port/devusb.c
index 7e713c7a9..362d40ca9 100644
--- a/sys/src/9/port/devusb.c
+++ b/sys/src/9/port/devusb.c
@@ -838,7 +838,6 @@ usbload(int speed, int maxpkt)
l = 0;
bs = 10UL * maxpkt;
switch(speed){
- case Superspeed:
case Highspeed:
l = 55*8*2 + 2 * (3 + bs) + Hostns;
break;
@@ -897,7 +896,7 @@ usbopen(Chan *c, int omode)
error(Enotconf);
ep->clrhalt = 0;
ep->rhrepl = -1;
- if(ep->load == 0)
+ if(ep->load == 0 && ep->dev->speed != Superspeed)
ep->load = usbload(ep->dev->speed, ep->maxpkt);
ep->hp->epopen(ep);