Some things that need to be done in no particular order: -------------------------------------------------------- Implement isochronous transfer mode. Implement audio driver. Do bandwidth accounting. Use lock manager locks. Use the pool allocator for TDs et al. Merge soft_td and td in uhci.c. soft_qh and qh soft_ed and ed in ohci.c soft_td and td Tidy up transfer completion. Throw out more USBDI gunk. Port FreeBSD umass driver. Make hub driver note transition between self and bus powered state. Handle overcurrent conditions.