From: Alan Stern Date: Fri, 11 Oct 2013 15:28:21 +0000 (-0400) Subject: USB: EHCI: compute full-speed bandwidth usage correctly X-Git-Tag: v3.13-rc1~174^2~74 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2b90f01b219e390e1f1bf68dd7a2333efb3e3eff;p=platform%2Fkernel%2Flinux-stable.git USB: EHCI: compute full-speed bandwidth usage correctly Although the bandwidth statistics maintained by ehci-hcd show up only in the /sys/kernel/debug/usb/devices file, they ought to be calculated correctly. The calculation for full-speed isochronous endpoints is wrong; it mistakenly yields bytes per microframe instead of bytes per frame. The "interval" value, which is in frames, should not be converted to microframes. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/host/ehci-sched.c b/drivers/usb/host/ehci-sched.c index 34b5945..4b0903c 100644 --- a/drivers/usb/host/ehci-sched.c +++ b/drivers/usb/host/ehci-sched.c @@ -1055,7 +1055,7 @@ iso_stream_init ( } else stream->raw_mask = smask_out [hs_transfers - 1]; bandwidth = stream->usecs + stream->c_usecs; - bandwidth /= interval << 3; + bandwidth /= interval; /* stream->splits gets created from raw_mask later */ stream->address = cpu_to_hc32(ehci, addr);