1 1.3 skrll $NetBSD: TODO.usbmp,v 1.3 2013/01/09 23:02:59 skrll Exp $ 2 1.2 mrg 3 1.2 mrg 4 1.2 mrg the majority of the USB MP device interface is documented in usbdivar.h. 5 1.2 mrg 6 1.2 mrg 7 1.2 mrg flesh out most of usbdi(9). 8 1.2 mrg 9 1.2 mrg 10 1.2 mrg host controllers needing to be ported: 11 1.2 mrg - dev/ic/slhci.c 12 1.2 mrg - arch/mips/adm5120/dev/ahci.c 13 1.2 mrg - rump/dev/lib/libugenhc/ugenhc.c 14 1.2 mrg 15 1.2 mrg 16 1.2 mrg use /* XXXSMP ok */ markers for non-SMP-safe host controller driver uses. 17 1.2 mrg eg, "if (lock_ptr) mutex_enter(lock_ptr); else s = splusb();" 18 1.2 mrg 19 1.2 mrg 20 1.2 mrg add lots more asserts 21 1.2 mrg 22 1.2 mrg 23 1.2 mrg usb_event_thread() startup should use something to sync companions 24 1.2 mrg 25 1.2 mrg 26 1.2 mrg wake/wakeup conversion: 27 1.2 mrg - usb_detach_waitold/wakeupold() -> usb_detach_wait/broadcast() 28 1.2 mrg - drivers: 29 1.2 mrg if_aue.c 30 1.2 mrg if_axe.c 31 1.2 mrg if_udav.c 32 1.2 mrg if_url.c 33 1.2 mrg ubt.c 34 1.2 mrg ucom.c 35 1.2 mrg ucycom.c 36 1.2 mrg ugen.c - done 37 1.2 mrg uhid.c - done 38 1.2 mrg uhso.c 39 1.2 mrg uirda.c 40 1.2 mrg ulpt.c 41 1.2 mrg umass.c - done, partially done -- need to check umass_scsipi.c change 42 1.2 mrg urio.c 43 1.2 mrg uscanner.c 44 1.2 mrg usscanner.c 45 1.2 mrg ustir.c 46 1.2 mrg utoppy.c 47 1.2 mrg 48 1.2 mrg 49 1.2 mrg use usb_delay_ms_locked() in places 50 1.2 mrg 51 1.2 mrg 52 1.2 mrg convert uhidev users to MPSAFE: 53 1.2 mrg ucycom(4) 54 1.2 mrg - own cdevsw that isn't D_MPSAFE; need to check intr handlers 55 1.2 mrg 56 1.2 mrg uhid(4) 57 1.2 mrg - needs some locking here (not completely tested changes) 58 1.2 mrg - done 59 1.2 mrg 60 1.2 mrg ukbd(4) 61 1.2 mrg ums(4) 62 1.2 mrg uts(4) 63 1.2 mrg pbms(4) 64 1.2 mrg - depends upon wscons? check intr 65 1.2 mrg 66 1.2 mrg uyurex(4) 67 1.2 mrg - sysmon -- hm? 68 1.2 mrg 69 1.2 mrg 70 1.2 mrg wakeup/tsleep drivers: 71 1.2 mrg - if_otus.c 72 1.2 mrg - if_upgt.c 73 1.2 mrg - if_zyd.c 74 1.2 mrg - ucom.c 75 1.2 mrg - ucycom.c 76 1.2 mrg - ugen.c - done 77 1.2 mrg - uirda.c 78 1.2 mrg - ulpt.c 79 1.2 mrg - umass_isdata.c 80 1.2 mrg - ustir.c 81 1.2 mrg - uthum.c 82 1.2 mrg - utoppy.c 83 1.2 mrg - uvscom.c 84 1.2 mrg - uyurex.c 85 1.2 mrg 86 1.2 mrg 87 1.2 mrg missing D_MPSAFE drivers: 88 1.2 mrg - ucom 89 1.2 mrg - ucycom 90 1.2 mrg - ugen - partially ready 91 1.2 mrg - uhso 92 1.2 mrg - ulpt 93 1.2 mrg - urio 94 1.2 mrg - usb 95 1.2 mrg - uscanner 96 1.2 mrg - utoppy 97 1.2 mrg 98 1.2 mrg 99 1.2 mrg missing CALLOUT_MPSAFE drivers: 100 1.2 mrg - if_aue 101 1.2 mrg - if_axe 102 1.2 mrg - if_cue 103 1.2 mrg - if_otus 104 1.2 mrg - if_rum 105 1.2 mrg - if_run 106 1.2 mrg - if_udav 107 1.2 mrg - if_upgt 108 1.2 mrg - if_ural 109 1.2 mrg - if_url 110 1.2 mrg - if_urtw 111 1.2 mrg - if_urtwn 112 1.2 mrg - if_zyd 113 1.2 mrg - ukbd 114 1.2 mrg - ulpt 115 1.2 mrg - uyurex 116 1.2 mrg 117 1.2 mrg 118 1.2 mrg driver testing: STATUS 119 1.2 mrg - uhub working 120 1.2 mrg - uhid working 121 1.2 mrg - uhidev working 122 1.2 mrg - ums working 123 1.2 mrg - uts 124 1.2 mrg - ukbd working 125 1.2 mrg - ucycom 126 1.2 mrg - uep 127 1.2 mrg - udl 128 1.2 mrg - ulpt attaches ok 129 1.2 mrg - uhso working (must take kernel lock for scsipi) 130 1.2 mrg - umass working (must take kernel lock for scsipi) 131 1.2 mrg - uaudio working 132 1.2 mrg - umidi working 133 1.2 mrg - uirda 134 1.2 mrg - stuirda 135 1.2 mrg - ustir 136 1.2 mrg - irmce 137 1.2 mrg - aue 138 1.2 mrg - axe working 139 1.2 mrg - cdce 140 1.2 mrg - cue 141 1.2 mrg - kue 142 1.2 mrg - udav 143 1.2 mrg - url 144 1.2 mrg - urndis 145 1.2 mrg - atu 146 1.2 mrg - otus 147 1.2 mrg - ral 148 1.2 mrg - rum 149 1.2 mrg - run 150 1.2 mrg - urtw 151 1.2 mrg - urtwn 152 1.2 mrg - upgt 153 1.2 mrg - zyd 154 1.2 mrg - upl 155 1.2 mrg - uberry 156 1.2 mrg - uipad 157 1.2 mrg - urio 158 1.2 mrg - uscanner ? (must take kernel lock for scsipi) 159 1.2 mrg - usscanner 160 1.2 mrg - utoppy 161 1.2 mrg - uyap 162 1.2 mrg - udsbr 163 1.2 mrg - ugen mostly done 164 1.2 mrg - pseye working 165 1.2 mrg - uvideo 166 1.2 mrg - auvitek ? (must take kernel lock for scsipi) 167 1.2 mrg - emdtv ? (must take kernel lock for scsipi) 168 1.2 mrg - ubt working (must take kernel lock for scsipi) 169 1.2 mrg - aubtfwl 170 1.2 mrg - u3ginit 171 1.2 mrg ucom attachments: 172 1.2 mrg - umodem working 173 1.2 mrg - uark 174 1.2 mrg - ubsa 175 1.2 mrg - uchcom 176 1.2 mrg - uftdi 177 1.2 mrg - uipaq 178 1.2 mrg - umct 179 1.2 mrg - uplcom attaches ok 180 1.3 skrll - uslsa working 181 1.2 mrg - uvscom 182 1.2 mrg - moscom 183 1.2 mrg - uvisor 184 1.2 mrg - ukyopon 185 1.2 mrg - u3g 186 1.2 mrg - ugensa 187