Home | History | Annotate | Line # | Download | only in usb
TODO revision 1.35
      1 Some things that need to be done:
      2 ---------------------------------
      3 
      4 Before 1.5:
      5 -----------
      6 
      7 Reset toggle on SET_INTERFACE (USB 1.1)
      8 
      9 Allow interrupt out endpoints. (USB 1.1)
     10 
     11 Fix flow control in ucom (copy from com driver).
     12 
     13 Handle CLEAR_ENDPOINT_STALL centrally.
     14 
     15 Use some encapsulation in the upl driver to allow multiple protocols.
     16 
     17 Get the uezcom driver (with Doug Ambrisko's firmware) running.
     18 
     19 
     20 Bug reports:
     21 ------------
     22 
     23 Chris Jones' problem: works in 1.4.2, not in -current
     24 
     25 Bernd Ernesti's problem: host controller halted with umodem
     26 
     27 umass problem with Ricoh flash reader
     28 
     29 wskbd for X
     30 
     31 mel kravitz's problem, lockups with disk and printer
     32 
     33 Aaron's problem: Test aue with ohci.
     34 
     35 
     36 General:
     37 --------
     38 
     39 Figure out why uvisor is so slow.
     40 Try to get specs, and check if Linux driver is really right.
     41 
     42 Translate UFI commands?
     43 
     44 Add lots of bus_dmamap_sync().
     45 
     46 Do bandwidth accounting.
     47 
     48 Use lock manager locks.
     49 
     50 Use the pool allocator for TDs et al.
     51 
     52 Throw out more USBDI gunk.
     53 
     54 Make hub driver notice transition between self and bus powered state.
     55 Some hubs change the number of available ports on this transition. :(
     56 Handle overcurrent conditions.
     57 
     58 Make it possible to open any device in a "generic" way, i.e., like ugen.
     59 Perhaps usbdevfs?
     60 
     61 Rotate the QHs for bulk transport to get fairer scheduling.
     62 
     63 Change HC drivers to queue multiple request for an endpoint
     64 to get better performance.
     65 
     66 Do memory deallocation when HC driver is detached.
     67 
     68 uaudio problems:
     69 	mixer names are awful, use some heuristics.
     70 	implement selector units
     71 	debug input
     72 	test with more devices
     73 
     74 Stylistic changes:
     75 	use usb_ and usbd_ consistently
     76 	rearrange the contents and names of some files (Nick)
     77 
     78 Use splsoftusb() or a thread to deliver callbacks.
     79 
     80 Add threads to the Ethernet drivers.
     81 
     82 Change what's done at watchdog timeout inb if_{a,c,k}ue.c; what we have
     83 now doesn't work because it's done in an interrupt context.
     84 
     85 Factor out the common code from the Ethernet drivers and reuse that.
     86 
     87 Rewrite HID driver to handle report IDs properly.  Perhaps there should
     88 be a hiddev to which hid with different IDs can attach?
     89 
     90 Get rid of hcpriv.
     91 
     92 Keyspan serial driver
     93 
     94 Factor out comon code in network drivers.
     95 
     96 
     97 Documentation:
     98 --------------
     99 
    100 Document device driver API.
    101 
    102 Document HC driver API.
    103 
    104 Update ugen(4)
    105