1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
|
# $OpenBSD: files.usb,v 1.97 2011/01/06 19:32:09 damien Exp $
# $NetBSD: files.usb,v 1.16 2000/02/14 20:29:54 augustss Exp $
#
# Config file and device description for machine-independent USB code.
# Included by ports that need it. Ports that use it must provide
# their own "major" declarations for the appropriate devices.
device usb {}
attach usb at usbus
file dev/usb/usb.c usb needs-flag
file dev/usb/usbdi.c usb
file dev/usb/usbdi_util.c usb
file dev/usb/usb_mem.c usb | usbf
file dev/usb/usb_subr.c usb
file dev/usb/usb_quirks.c usb
# Hub driver
device uhub {[port = -1], [configuration = -1], [interface = -1],
[vendor = -1], [product = -1], [release = -1]}
attach uhub at usb
file dev/usb/uhub.c usb
attach uhub at uhub with uhub_uhub
# Modem and com serial port "bus"
define ucombus {[portno = -1]}
# EZ-USB firmware loader
define ezload
file dev/usb/ezload.c ezload
# Audio devices
device uaudio: audio, auconv, mulaw
attach uaudio at uhub
file dev/usb/uaudio.c uaudio
# Video devices
device uvideo: video, firmload
attach uvideo at uhub
file dev/usb/uvideo.c uvideo
device udl: wsemuldisplaydev, rasops16, edid
attach udl at uhub
file dev/usb/udl.c udl
# MIDI devices
device umidi: midibus
attach umidi at uhub
file dev/usb/umidi.c umidi
file dev/usb/umidi_quirks.c umidi
# Modem and com serial port
device ucom
attach ucom at ucombus
file dev/usb/ucom.c ucom | ucombus needs-flag
# Generic devices
device ugen
attach ugen at uhub
file dev/usb/ugen.c ugen needs-flag
# HID
# HID "bus"
define uhidbus {[reportid = -1]}
# HID processing
define hid
file dev/usb/hid.c hid
# HID root device for multiple report IDs
device uhidev: hid, uhidbus
attach uhidev at uhub
file dev/usb/uhidev.c uhidev
# Generic HID devices
device uhid: hid
attach uhid at uhidbus
file dev/usb/uhid.c uhid needs-flag
# Keyboards
define hidkbd
file dev/usb/hidkbd.c hidkbd needs-flag
file dev/usb/ukbdmap.c hidkbd
device ukbd: hid, hidkbd, wskbddev
attach ukbd at uhidbus
file dev/usb/ukbd.c ukbd needs-flag
# Mice
define hidms
file dev/usb/hidms.c hidms
device ums: hid, hidms, wsmousedev
attach ums at uhidbus
file dev/usb/ums.c ums
# USB Touchscreen
device uts: wsmousedev
attach uts at uhub
file dev/usb/uts.c uts
device uhts: wsmousedev
attach uhts at uhidbus
file dev/usb/uhts.c uhts
# Cypress microcontroller based serial adpaters
device ucycom: hid, ucombus
attach ucycom at uhidbus
file dev/usb/ucycom.c ucycom needs-flag
# Printers
device ulpt
attach ulpt at uhub
file dev/usb/ulpt.c ulpt needs-flag
# Mass storage
device umass: scsi, atapi, ata
attach umass at uhub
file dev/usb/umass.c umass
file dev/usb/umass_quirks.c umass
file dev/usb/umass_scsi.c umass & (scsibus | atapiscsi)
# Misc
# Gude Expert mouseCLOCK DCF77 time signal station receiver
device udcf
attach udcf at uhub
file dev/usb/udcf.c udcf
# Meinberg USB5131 DCF77 radio clock
device umbg
attach umbg at uhub
file dev/usb/umbg.c umbg
# Diamond Multimedia Rio 500
device urio
attach urio at uhub
file dev/usb/urio.c urio needs-flag
# Handspring Visor
device uvisor: ucombus
attach uvisor at uhub
file dev/usb/uvisor.c uvisor
# YAP phone firmware loader
device uyap: ezload, firmload
attach uyap at uhub
file dev/usb/uyap.c uyap
# D-Link DSB-R100 FM radio
device udsbr: radiobus
attach udsbr at uhub
file dev/usb/udsbr.c udsbr
# TEMPerHUM HID
device uthum: hid
attach uthum at uhidbus
file dev/usb/uthum.c uthum
# Strawberry Linux USBRH
device utrh: hid
attach utrh at uhidbus
file dev/usb/utrh.c utrh
# Maywa-denki/Kayac YUREX
device utwitch: hid
attach utwitch at uhidbus
file dev/usb/utwitch.c utwitch
# Ethernet adapters
# ADMtek AN986 Pegasus
device aue: ether, ifnet, mii, ifmedia
attach aue at uhub
file dev/usb/if_aue.c aue
# Ethernet adapters
# ASIX Electronics AX88172
device axe: ether, ifnet, mii, ifmedia
attach axe at uhub
file dev/usb/if_axe.c axe
# CATC USB-EL1201A
device cue: ether, ifnet, ifmedia
attach cue at uhub
file dev/usb/if_cue.c cue
# Kawasaki LSI KL5KUSB101B
device kue: ether, ifnet, ifmedia, firmload
attach kue at uhub
file dev/usb/if_kue.c kue
# CDC Ethernet
device cdce: ether, ifnet, ifmedia
attach cdce at uhub
file dev/usb/if_cdce.c cdce
# RNDIS
device urndis: ether, ifnet, ifmedia
attach urndis at uhub
file dev/usb/if_urndis.c urndis
# Moschip MCS7x30 Ethernet
device mos: ether, ifnet, mii, ifmedia
attach mos at uhub
file dev/usb/if_mos.c mos
# Davicom DM9601
device udav: ether, ifnet, mii, ifmedia
attach udav at uhub
file dev/usb/if_udav.c udav
# Prolific PL2302 host-host
device upl: ifnet
attach upl at uhub
file dev/usb/if_upl.c upl
# Realtek RTL8150L(M)
device url: ether, ifnet, mii
attach url at uhub
file dev/usb/if_url.c url
# Serial drivers
# Modems
device umodem: ucombus
attach umodem at uhub
file dev/usb/umodem.c umodem
# FTDI serial driver
device uftdi: ucombus
attach uftdi at uhub
file dev/usb/uftdi.c uftdi
# Prolific PL2303 serial driver
device uplcom: ucombus
attach uplcom at uhub
file dev/usb/uplcom.c uplcom
# MCT USB-232 serial driver
device umct: ucombus
attach umct at uhub
file dev/usb/umct.c umct
# SUNTAC Slipper U VS-10U driver
device uvscom: ucombus
attach uvscom at uhub
file dev/usb/uvscom.c uvscom
# Belkin & other serial driver
device ubsa: ucombus
attach ubsa at uhub
file dev/usb/ubsa.c ubsa
# Silicon Laboratories CP210x serial
device uslcom: ucombus
attach uslcom at uhub
file dev/usb/uslcom.c uslcom
# Arkmicro ARK3116 serial
device uark: ucombus
attach uark at uhub
file dev/usb/uark.c uark
# MosChip MCS7703 serial
device moscom: ucombus
attach moscom at uhub
file dev/usb/moscom.c moscom
# iPAQ PDAs
# Generic ipaq support
device uipaq: ucombus
attach uipaq at uhub
file dev/usb/uipaq.c uipaq
# Qualcomm MSM EVDO
device umsm: ucombus
attach umsm at uhub
file dev/usb/umsm.c umsm
# WinChipHead CH341/340 serial
device uchcom: ucombus
attach uchcom at uhub
file dev/usb/uchcom.c uchcom
# TI TUSB3410 serial
device uticom: ucombus
attach uticom at uhub
file dev/usb/uticom.c uticom
# Scanners
# Generic scanner support
device uscanner
attach uscanner at uhub
file dev/usb/uscanner.c uscanner needs-flag
# Prism3 WI @ USB
attach wi at uhub with wi_usb
file dev/usb/if_wi_usb.c wi_usb
# Atmel AT76c503 / AT76c503a / AT76c505 / AT76c505a @ USB
device atu: ether, ifnet, ifmedia, wlan, firmload
attach atu at uhub
file dev/usb/if_atu.c atu
# Bluetooth
device ubt: btbus, bluetooth
attach ubt at uhub
file dev/usb/ubt.c ubt
# Ralink Technology RT2500USB
device ural: ether, ifnet, ifmedia, wlan
attach ural at uhub
file dev/usb/if_ral.c ural
# Ralink Technology RT2501USB
device rum: ether, ifnet, ifmedia, wlan, firmload
attach rum at uhub
file dev/usb/if_rum.c rum
# Ralink Technology RT2700U/RT2800U/RT3000U
device run: ether, ifnet, ifmedia, wlan, firmload
attach run at uhub
file dev/usb/if_run.c run
# Zydas ZD1211
device zyd: ether, ifnet, ifmedia, wlan, firmload
attach zyd at uhub
file dev/usb/if_zyd.c zyd
# PrismGT
device upgt: ether, ifnet, ifmedia, wlan, firmload
attach upgt at uhub
file dev/usb/if_upgt.c upgt
# RealTek 8187
device urtw: ether, ifnet, ifmedia, wlan
attach urtw at uhub
file dev/usb/if_urtw.c urtw
# Realtek RTL8188CU/RTL8192CU
device urtwn: ether, ifnet, ifmedia, wlan, firmload
attach urtwn at uhub
file dev/usb/if_urtwn.c urtwn
# Realtek RTL8188SU/RTL8191SU/RTL8192SU
device rsu: ether, ifnet, ifmedia, wlan, firmload
attach rsu at uhub
file dev/usb/if_rsu.c rsu
# Atheros AR9170
device otus: ether, ifnet, ifmedia, wlan, firmload
attach otus at uhub
file dev/usb/if_otus.c otus
# Analog Devices Eagle driver
device ueagle: atm, ifnet, ezload, firmload
attach ueagle at uhub
file dev/usb/ueagle.c ueagle
# USB logical device
device usbf {}
attach usbf at usbdev
file dev/usb/usbf.c usbf needs-flag
file dev/usb/usbf_subr.c usbf
# Communication Device Class Ethernet function
device cdcef {}
attach cdcef at usbf
file dev/usb/if_cdcef.c cdcef
# Atheros AR5005UG/AR5005UX
device uath: ether, ifnet, ifmedia, wlan, firmload
attach uath at uhub
file dev/usb/if_uath.c uath
# Atheros AR9002U
attach athn at uhub with athn_usb: firmload
file dev/usb/if_athn_usb.c athn_usb needs-flag
# Maxim/Dallas DS2490 1-Wire adapter
device uow: onewirebus
attach uow at uhub
file dev/usb/uow.c uow
# Research In Motion Blackberry
device uberry {}
attach uberry at uhub
file dev/usb/uberry.c uberry
# DFU driver
device udfu {}
attach udfu at uhub
file dev/usb/udfu.c udfu
|