TODO revision 1.34
11.1SaugustssSome things that need to be done in no particular order:
21.7Saugustss--------------------------------------------------------
31.1Saugustss
41.30SaugustssBefore 1.5:
51.30Saugustss-----------
61.30Saugustss
71.34SaugustssReset toggle on SET_INTERFACE (USB 1.1)
81.34Saugustss
91.34SaugustssAllow interrupt out endpoints. (USB 1.1)
101.30Saugustss
111.30Saugustss-----------
121.30Saugustss
131.34SaugustssMake flow control work in ucom.
141.34Saugustss
151.34SaugustssFigure out why uvisor is so slow.
161.34Saugustss
171.34SaugustssTranslate UFI commands?
181.34Saugustss
191.11SaugustssAdd lots of bus_dmamap_sync().
201.11Saugustss
211.2SaugustssDo bandwidth accounting.
221.2Saugustss
231.2SaugustssUse lock manager locks.
241.2Saugustss
251.5SaugustssUse the pool allocator for TDs et al.
261.5Saugustss
271.6SaugustssThrow out more USBDI gunk.
281.7Saugustss
291.13SaugustssMake hub driver notice transition between self and bus powered state.
301.21SaugustssSome hubs change the number of available ports on this transition. :(
311.7SaugustssHandle overcurrent conditions.
321.13Saugustss
331.13SaugustssMake it possible to open any device in a "generic" way, i.e., like ugen.
341.13Saugustss
351.13SaugustssRotate the QHs for bulk transport to get fairer scheduling.
361.13Saugustss
371.13SaugustssChange HC drivers to queue multiple request for an endpoint
381.13Saugustssto get better performance.
391.14Saugustss
401.25SaugustssDo memory deallocation when HC driver is detached.
411.20Saugustss
421.14Saugustssuaudio problems:
431.14Saugustss	mixer names are awful, use some heuristics.
441.14Saugustss	implement selector units
451.14Saugustss	implement input
461.14Saugustss	test with more devices
471.15Saugustss
481.17SaugustssStylistic changes:
491.17Saugustss	use usb_ and usbd_ consistently
501.17Saugustss	rearrange the contents and names of some files (Nick)
511.17Saugustss
521.10SaugustssDocument device driver API.
531.10Saugustss
541.10SaugustssDocument HC driver API.
551.22Saugustss
561.28SaugustssHandle CLEAR_ENDPOINT_STALL centrally.
571.25Saugustss
581.25SaugustssUse splsoftusb() or a thread to deliver callbacks.
591.25Saugustss
601.25SaugustssAdd threads to the Ethernet drivers.
611.29Saugustss
621.29SaugustssChange what's done at watchdog timeout inb if_{a,c,k}ue.c; what we have
631.29Saugustssnow doesn't work because it's done in an interrupt context.
641.34Saugustss
651.34SaugustssFactor out the common code from the Ethernet drivers and reuse that.
661.31Saugustss
671.31SaugustssRewrite HID driver to handle report IDs properly.  Perhaps there should
681.31Saugustssbe a hiddev to which hid with different IDs can attach?
691.29Saugustss
701.32SaugustssGet rid of hcpriv.
71