Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 275820
b: refs/heads/master
c: 811c926
h: refs/heads/master
v: v3
  • Loading branch information
Thomas Poussevin authored and Greg Kroah-Hartman committed Nov 14, 2011
1 parent 3d2f5b9 commit b5d1c70
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 6 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: f69e3120df82391a0ee8118e0a156239a06b2afb
refs/heads/master: 811c926c538f7e8d3c08b630dd5844efd7e000f6
15 changes: 10 additions & 5 deletions trunk/drivers/usb/host/ehci-sched.c
Original file line number Diff line number Diff line change
Expand Up @@ -1479,10 +1479,15 @@ iso_stream_schedule (

/* NOTE: assumes URB_ISO_ASAP, to limit complexity/bugs */

/* find a uframe slot with enough bandwidth */
next = start + period;
for (; start < next; start++) {

/* find a uframe slot with enough bandwidth.
* Early uframes are more precious because full-speed
* iso IN transfers can't use late uframes,
* and therefore they should be allocated last.
*/
next = start;
start += period;
do {
start--;
/* check schedule: enough space? */
if (stream->highspeed) {
if (itd_slot_ok(ehci, mod, start,
Expand All @@ -1495,7 +1500,7 @@ iso_stream_schedule (
start, sched, period))
break;
}
}
} while (start > next);

/* no room in the schedule */
if (start == next) {
Expand Down

0 comments on commit b5d1c70

Please sign in to comment.