Alan Stern wrote:
They could be distributed this way:

frame:     0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
period 1:  *   *   *   *   *   *   *   *   *   *   *   *   *   *   *   *
period 2:      *       *       *       *       *       *       *       *
period 4:          *               *               *               *
period 8:                  *                               *
period 16:                                 *

That kind of load balancing is what the OHCI driver does today. ("ohci-hcd" does it for all periodic transactions. "usb-ohci" assumes iso is always period 1 and doesn't account for low-speed interrupt transferse quite right.)

There are some pretty pictures in the OHCI spec.  One shows the
schedule tree in the fully populated form like you show -- most
queue heads usually being empty.  Another shows it with a minimal
set of queue heads:  more efficient in several ways.


         With a straightforward change to let the
allocator understand how this works, it would be possible to schedule more
interrupt transactions than currently.

Is there any point in me pursuing this?

Not for OHCI ... :)


I'd be actively interested in someone else starting to improve
periodic scheduling for the EHCI code, which currently takes a
lot of shortcuts.

- Dave




------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to