TODO revision 1.39
11.35SaugustssSome things that need to be done:
21.35Saugustss---------------------------------
31.1Saugustss
41.39SaugustssHigh priority:
51.39Saugustss--------------
61.39Saugustss
71.39SaugustssOn a short control transfer the status phase needs to be executed anyway.
81.39Saugustss
91.39SaugustssDo bandwidth reclamation while we have outstanding bulk transfers.
101.39Saugustss(Use an inactive TD on last QH to avoid PIIX bug.)
111.30Saugustss
121.34SaugustssAllow interrupt out endpoints. (USB 1.1)
131.30Saugustss
141.35SaugustssFix flow control in ucom (copy from com driver).
151.35Saugustss
161.35SaugustssUse some encapsulation in the upl driver to allow multiple protocols.
171.35Saugustss
181.35SaugustssGet the uezcom driver (with Doug Ambrisko's firmware) running.
191.35Saugustss
201.35Saugustss
211.35SaugustssBug reports:
221.35Saugustss------------
231.35Saugustss
241.35SaugustssBernd Ernesti's problem: host controller halted with umodem
251.35Saugustss
261.35Saugustssumass problem with Ricoh flash reader
271.35Saugustss
281.35Saugustsswskbd for X
291.35Saugustss
301.35Saugustssmel kravitz's problem, lockups with disk and printer
311.35Saugustss
321.35SaugustssAaron's problem: Test aue with ohci.
331.36Saugustss
341.30Saugustss
351.35SaugustssGeneral:
361.35Saugustss--------
371.34Saugustss
381.34SaugustssFigure out why uvisor is so slow.
391.35SaugustssTry to get specs, and check if Linux driver is really right.
401.34Saugustss
411.11SaugustssAdd lots of bus_dmamap_sync().
421.11Saugustss
431.2SaugustssDo bandwidth accounting.
441.2Saugustss
451.2SaugustssUse lock manager locks.
461.2Saugustss
471.5SaugustssUse the pool allocator for TDs et al.
481.5Saugustss
491.6SaugustssThrow out more USBDI gunk.
501.7Saugustss
511.13SaugustssMake hub driver notice transition between self and bus powered state.
521.21SaugustssSome hubs change the number of available ports on this transition. :(
531.7SaugustssHandle overcurrent conditions.
541.13Saugustss
551.13SaugustssMake it possible to open any device in a "generic" way, i.e., like ugen.
561.35SaugustssPerhaps usbdevfs?
571.13Saugustss
581.13SaugustssRotate the QHs for bulk transport to get fairer scheduling.
591.13Saugustss
601.13SaugustssChange HC drivers to queue multiple request for an endpoint
611.13Saugustssto get better performance.
621.14Saugustss
631.25SaugustssDo memory deallocation when HC driver is detached.
641.20Saugustss
651.14Saugustssuaudio problems:
661.14Saugustss	mixer names are awful, use some heuristics.
671.14Saugustss	implement selector units
681.35Saugustss	debug input
691.14Saugustss	test with more devices
701.15Saugustss
711.17SaugustssStylistic changes:
721.17Saugustss	use usb_ and usbd_ consistently
731.17Saugustss	rearrange the contents and names of some files (Nick)
741.17Saugustss
751.25SaugustssUse splsoftusb() or a thread to deliver callbacks.
761.25Saugustss
771.25SaugustssAdd threads to the Ethernet drivers.
781.29Saugustss
791.29SaugustssChange what's done at watchdog timeout inb if_{a,c,k}ue.c; what we have
801.29Saugustssnow doesn't work because it's done in an interrupt context.
811.34Saugustss
821.34SaugustssFactor out the common code from the Ethernet drivers and reuse that.
831.31Saugustss
841.31SaugustssRewrite HID driver to handle report IDs properly.  Perhaps there should
851.31Saugustssbe a hiddev to which hid with different IDs can attach?
861.29Saugustss
871.32SaugustssGet rid of hcpriv.
881.35Saugustss
891.35SaugustssKeyspan serial driver
901.35Saugustss
911.35Saugustss
921.35SaugustssDocumentation:
931.35Saugustss--------------
941.35Saugustss
951.35SaugustssDocument device driver API.
961.35Saugustss
971.35SaugustssDocument HC driver API.
981.35Saugustss
991.35SaugustssUpdate ugen(4)
100