files.usb revision 1.138
1#	$NetBSD: files.usb,v 1.138 2016/04/23 10:15:31 skrll Exp $
2#
3# Config file and device description for machine-independent USB code.
4# Included by ports that need it.  Ports that use it must provide
5# their own "major" declarations for the appropriate devices.
6
7defflag	USBVERBOSE
8defparam opt_usb.h	USBHIST_SIZE
9defflag	opt_usb.h	USB_FRAG_DMA_WORKAROUND
10
11# top level usb debug defines
12defflag	opt_usb.h	USB_DEBUG: KERNHIST
13
14# HC controllers
15defflag	opt_usb.h	EHCI_DEBUG: USB_DEBUG
16defflag	opt_usb.h	OHCI_DEBUG: USB_DEBUG
17defflag	opt_usb.h	UHCI_DEBUG: USB_DEBUG
18defflag	opt_usb.h	DWC2_DEBUG: USB_DEBUG
19defflag	opt_usb.h	XHCI_DEBUG: USB_DEBUG
20defflag	opt_usb.h	MOTG_DEBUG: USB_DEBUG
21
22# HUB driver
23defflag opt_usb.h	UHUB_DEBUG: USB_DEBUG
24
25# Device drivers
26
27defflag opt_usb.h	ATU_DEBUG: USB_DEBUG
28defflag opt_usb.h	AUE_DEBUG: USB_DEBUG
29defflag opt_usb.h	AUVITEK_I2C_DEBUG: USB_DEBUG
30defflag opt_usb.h	AXE_DEBUG: USB_DEBUG
31defflag opt_usb.h	AXEN_DEBUG: USB_DEBUG
32defflag opt_usb.h	CUE_DEBUG: USB_DEBUG
33defflag opt_usb.h	EZLOAD_DEBUG: USB_DEBUG
34defflag opt_usb.h	KUE_DEBUG: USB_DEBUG
35defflag opt_usb.h	OTUS_DEBUG: USB_DEBUG
36defflag opt_usb.h	RUM_DEBUG: USB_DEBUG
37defflag opt_usb.h	RUN_DEBUG: USB_DEBUG
38defflag opt_usb.h	UARK_DEBUG: USB_DEBUG
39defflag opt_usb.h	UATP_DEBUG: USB_DEBUG
40defflag opt_usb.h	UAUDIO_DEBUG: USB_DEBUG
41defflag opt_usb.h	UBERRY_DEBUG: USB_DEBUG
42defflag opt_usb.h	UBSA_DEBUG: USB_DEBUG
43defflag opt_usb.h	UBT_DEBUG: USB_DEBUG
44defflag opt_usb.h	UCHCOM_DEBUG: USB_DEBUG
45defflag opt_usb.h	UCOM_DEBUG: USB_DEBUG
46defflag opt_usb.h	UCYCOM_DEBUG: USB_DEBUG
47defflag opt_usb.h	UDAV_DEBUG: USB_DEBUG
48defflag opt_usb.h	UDL_DEBUG: USB_DEBUG
49defflag opt_usb.h	UDSBR_DEBUG: USB_DEBUG
50defflag opt_usb.h	UFTDI_DEBUG: USB_DEBUG
51defflag opt_usb.h	UGENSA_DEBUG: USB_DEBUG
52defflag opt_usb.h	UGEN_DEBUG: USB_DEBUG
53defflag opt_usb.h	UHIDEV_DEBUG: USB_DEBUG
54defflag opt_usb.h	UHID_DEBUG: USB_DEBUG
55defflag opt_usb.h	UHMODEM_DEBUG: USB_DEBUG
56defflag opt_usb.h	UHSO_DEBUG: USB_DEBUG
57defflag opt_usb.h	UIPAD_DEBUG: USB_DEBUG
58defflag opt_usb.h	UIPAQ_DEBUG: USB_DEBUG
59defflag opt_usb.h	UIRDA_DEBUG: USB_DEBUG
60defflag opt_usb.h	UISDATA_DEBUG: USB_DEBUG
61defflag opt_usb.h	UKBD_DEBUG: USB_DEBUG
62defflag opt_usb.h	UKYOPON_DEBUG: USB_DEBUG
63defflag opt_usb.h	ULPT_DEBUG: USB_DEBUG
64defflag opt_usb.h	UMASS_DEBUG: USB_DEBUG
65defflag opt_usb.h	UMCT_DEBUG: USB_DEBUG
66defflag opt_usb.h	UMIDIQUIRK_DEBUG: USB_DEBUG
67defflag opt_usb.h	UMIDI_DEBUG: USB_DEBUG
68defflag opt_usb.h	UMODEM_DEBUG: USB_DEBUG
69defflag opt_usb.h	UMS_DEBUG: USB_DEBUG
70defflag opt_usb.h	UPGT_DEBUG: USB_DEBUG
71defflag opt_usb.h	UPLCOM_DEBUG: USB_DEBUG
72defflag opt_usb.h	UPL_DEBUG: USB_DEBUG
73defflag opt_usb.h	URAL_DEBUG: USB_DEBUG
74defflag opt_usb.h	URIO_DEBUG: USB_DEBUG
75defflag opt_usb.h	URL_DEBUG: USB_DEBUG
76defflag opt_usb.h	URNDIS_DEBUG: USB_DEBUG
77defflag opt_usb.h	URTWN_DEBUG: USB_DEBUG
78defflag opt_usb.h	URTW_DEBUG: USB_DEBUG
79defflag opt_usb.h	USCANNER_DEBUG: USB_DEBUG
80defflag opt_usb.h	USLSA_DEBUG: USB_DEBUG
81defflag opt_usb.h	USSCANNER_DEBUG: USB_DEBUG
82defflag opt_usb.h	USTIR_DEBUG: USB_DEBUG
83defflag opt_usb.h	UTHUM_DEBUG: USB_DEBUG
84defflag opt_usb.h	UTOPPY_DEBUG: USB_DEBUG
85defflag opt_usb.h	UTS_DEBUG: USB_DEBUG
86defflag opt_usb.h	UVIDEO_DEBUG: USB_DEBUG
87defflag opt_usb.h	UVISOR_DEBUG: USB_DEBUG
88defflag opt_usb.h	UVSCOM_DEBUG: USB_DEBUG
89defflag opt_usb.h	UYUREX_DEBUG: USB_DEBUG
90defflag opt_usb.h	UZCOM_DEBUG: USB_DEBUG
91defflag opt_usb.h	ZYD_DEBUG: USB_DEBUG
92
93define	usbroothubif { }
94define	usbdevif { [port = -1], [configuration = -1], [interface = -1],
95		   [vendor = -1], [product = -1], [release = -1] }
96define	usbifif { [port = -1], [configuration = -1], [interface = -1],
97		  [vendor = -1], [product = -1], [release = -1] }
98
99device	usb: usbroothubif
100attach	usb at usbus
101file	dev/usb/usb.c			usb			needs-flag
102file	dev/usb/usbdi.c			usb
103file	dev/usb/usbdi_util.c		usb
104file	dev/usb/usb_subr.c		usb
105file	dev/usb/usb_quirks.c		usb
106
107define	usb_dma: usb
108file	dev/usb/usb_mem.c		usb_dma			needs-flag
109
110define	usbverbose: usb
111file	dev/usb/usb_verbose.c		usbverbose
112
113# Hub driver
114device	uhub: usbdevif, usbifif
115attach	uhub at usbroothubif with uroothub
116attach	uhub at usbdevif
117file	dev/usb/uhub.c			usb
118
119# Modem and com serial port "bus"
120define	ucombus {[ portno = -1 ]}
121
122# EZ-USB firmware loader
123define	ezload
124file	dev/usb/ezload.c		ezload
125
126# Audio devices
127device	uaudio: audiobus, auconv, mulaw, aurateconv
128attach	uaudio at usbifif
129file	dev/usb/uaudio.c		uaudio
130
131# MIDI devices
132device	umidi: midibus
133attach	umidi at usbifif
134file	dev/usb/umidi.c			umidi
135file	dev/usb/umidi_quirks.c		umidi
136
137# Modem and com serial port
138device	ucom
139attach	ucom at ucombus
140file	dev/usb/ucom.c			ucom | ucombus		needs-flag
141
142
143# Generic devices
144device	ugen
145attach	ugen at usbdevif
146file	dev/usb/ugen.c			ugen			needs-flag
147
148
149# HID
150# HID "bus"
151define	uhidbus {[ reportid = -1 ]}
152
153# HID root device for multiple report IDs
154device	uhidev: hid, uhidbus
155attach	uhidev at usbifif
156file	dev/usb/uhidev.c		uhidev
157
158# Generic HID devices
159device	uhid: hid
160attach	uhid at uhidbus
161file	dev/usb/uhid.c			uhid			needs-flag
162
163# Keyboards
164defparam	UKBD_LAYOUT
165# Gdium's Fn key needs software translation
166defflag		opt_ukbd.h 	GDIUM_KEYBOARD_HACK
167device	ukbd: hid, wskbddev
168attach	ukbd at uhidbus
169file	dev/usb/ukbd.c			ukbd			needs-flag
170file	dev/usb/ukbdmap.c		ukbd | btkbd
171
172# Mice
173device	ums: hid, wsmousedev
174attach	ums at uhidbus
175file	dev/usb/ums.c			ums
176
177# USB Apple trackpad
178device	uatp: hid, wsmousedev
179attach	uatp at uhidbus
180file	dev/usb/uatp.c			uatp
181
182# Touchscreens
183device	uts: hid, wsmousedev, tpcalib
184attach	uts at uhidbus
185file	dev/usb/uts.c			uts
186
187# eGalax USB Touch Panel
188device	uep: wsmousedev, tpcalib
189attach	uep at usbdevif
190file	dev/usb/uep.c			uep			needs-flag
191
192# Cypress microcontroller based serial adapters
193device	ucycom: hid
194attach	ucycom at uhidbus
195file	dev/usb/ucycom.c		ucycom			needs-flag
196
197# Printers
198device	ulpt
199attach	ulpt at usbifif
200file	dev/usb/ulpt.c			ulpt			needs-flag
201
202
203# Mass storage
204device	umass: scsi, atapi, ata_hl
205attach	umass at usbifif
206file	dev/usb/umass.c			umass
207file	dev/usb/umass_isdata.c		umass & wd
208file	dev/usb/umass_quirks.c		umass
209file	dev/usb/umass_scsipi.c		umass & (scsibus | atapibus)
210
211
212# IrDA bridges
213device	uirda: irbus
214attach	uirda at usbifif
215file	dev/usb/uirda.c			uirda | stuirda
216
217# SigmaTel not quite UIRDA IrDA bridge
218device	stuirda: irbus,firmload
219attach	stuirda at usbifif
220file	dev/usb/stuirda.c		stuirda
221
222# SigmaTel IrDA bridge
223device	ustir: irbus, irdasir
224attach	ustir at usbdevif
225file	dev/usb/ustir.c			ustir
226
227# Windows Media Center IR tranceivers
228device	irmce: irbus
229attach	irmce at usbifif
230file	dev/usb/irmce.c			irmce
231
232
233# Bluetooth controllers
234device	ubt: btbus, bluetooth
235attach	ubt at usbdevif
236file	dev/usb/ubt.c			ubt
237
238# Atheros USB Bluetooth firmware load
239device	aubtfwl: firmload
240attach	aubtfwl at usbdevif
241file	dev/usb/aubtfwl.c		aubtfwl
242
243#
244# Capture devices
245#
246
247# Sony PLAYSTATION(R) Eye
248device	pseye: videobus
249attach	pseye at usbifif
250file	dev/usb/pseye.c			pseye
251
252# USB Video Class capture devices
253device	uvideo: videobus
254attach	uvideo at usbifif
255file	dev/usb/uvideo.c		uvideo
256
257# Auvitek AU0828
258device	auvitek: videobus, dtvbus, i2cbus, i2cexec, usbifif, au8522, xc5k
259attach	auvitek at usbdevif
260file	dev/usb/auvitek.c		auvitek
261file	dev/usb/auvitek_audio.c		auvitek
262file	dev/usb/auvitek_board.c		auvitek
263file	dev/usb/auvitek_dtv.c		auvitek
264file	dev/usb/auvitek_i2c.c		auvitek
265file	dev/usb/auvitek_video.c		auvitek
266
267# Empia EM28xx
268device	emdtv: dtvbus, irbus, i2cexec, lg3303, xc3028
269attach	emdtv at usbdevif
270file	dev/usb/emdtv.c			emdtv
271file	dev/usb/emdtv_board.c		emdtv
272file	dev/usb/emdtv_dtv.c		emdtv
273file	dev/usb/emdtv_i2c.c		emdtv
274file	dev/usb/emdtv_ir.c		emdtv
275
276#
277# Misc
278#
279
280# Diamond Multimedia Rio 500
281device	urio
282attach	urio at usbdevif
283file	dev/usb/urio.c			urio			needs-flag
284
285# Apple iPad
286device	uipad
287attach	uipad at usbdevif
288file	dev/usb/uipad.c				uipad
289
290# BlackBerries
291device	uberry
292attach	uberry at usbdevif
293file	dev/usb/uberry.c			uberry
294
295# Handspring Visor
296device	uvisor: ucombus
297attach	uvisor at usbdevif
298file	dev/usb/uvisor.c		uvisor
299
300# Generic Serial Adapter
301device	ugensa: ucombus
302attach	ugensa at usbdevif
303file	dev/usb/ugensa.c		ugensa
304
305# 3G Modem
306device	u3g: ucombus
307attach	u3g at usbifif
308device	u3ginit
309attach	u3ginit at usbdevif
310file	dev/usb/u3g.c			u3g | u3ginit
311
312# YAP phone firmware loader
313device	uyap: ezload
314attach	uyap at usbdevif
315file	dev/usb/uyap.c			uyap
316
317# D-Link DSB-R100 FM radio
318device	udsbr: radiodev
319attach	udsbr at usbdevif
320file	dev/usb/udsbr.c			udsbr
321
322# Silicon Labs USB radio module (FM)
323device	slurm: radiodev
324attach	slurm at usbifif
325file	dev/usb/slurm.c			slurm
326
327# TEMPerHUM HID
328device	uthum: hid, sysmon_envsys
329attach	uthum at uhidbus
330file	dev/usb/uthum.c			uthum
331
332# Ethernet adapters
333# ADMtek AN986 Pegasus
334device	aue: arp, ether, ifnet, mii, mii_phy
335attach	aue at usbdevif
336file	dev/usb/if_aue.c		aue
337
338# CDC Ethernet
339device	cdce: arp, ether, ifnet
340attach	cdce at usbifif
341file	dev/usb/if_cdce.c		cdce
342
343# CATC USB-EL1201A
344device	cue: arp, ether, ifnet
345attach	cue at usbdevif
346file	dev/usb/if_cue.c		cue
347
348# Kawasaki LSI KL5KUSB101B
349device	kue: arp, ether, ifnet
350attach	kue at usbdevif
351file	dev/usb/if_kue.c		kue
352
353# Prolific PL2302 host-host
354device	upl: ifnet
355attach	upl at usbdevif
356file	dev/usb/if_upl.c		upl
357
358# Realtek RTL8150L(M)
359device	url: arp, ether, ifnet, mii
360attach	url at usbdevif
361file	dev/usb/if_url.c		url
362
363# ASIX AX88172
364device	axe: arp, ether, ifnet, mii, mii_phy
365attach	axe at usbdevif
366file	dev/usb/if_axe.c		axe
367
368# ASIX AX88178a and AX88179
369device	axen: arp, ether, ifnet, mii
370attach	axen at usbdevif
371file	dev/usb/if_axen.c		axen
372
373# DAVICOM DM9601
374device	udav: arp, ether, ifnet, mii, mii_phy
375attach	udav at usbdevif
376file	dev/usb/if_udav.c		udav
377
378# Atheros AR9170
379device	otus: arp, ether, firmload, ifnet, wlan
380attach	otus at usbdevif
381file	dev/usb/if_otus.c		otus
382
383# Serial drivers
384# Modems
385define	umodem_common
386file	dev/usb/umodem_common.c		umodem_common
387device	umodem: ucombus, umodem_common
388attach	umodem at usbifif
389file	dev/usb/umodem.c		umodem
390
391# FTDI serial driver
392device	uftdi: ucombus
393attach	uftdi at usbdevif
394file	dev/usb/uftdi.c			uftdi
395
396# Prolific PL2303 serial driver
397device	uplcom: ucombus
398attach	uplcom at usbdevif
399file	dev/usb/uplcom.c		uplcom
400
401# MCT USB-232 serial driver
402device	umct: ucombus
403attach	umct at usbdevif
404file	dev/usb/umct.c			umct
405
406# MOSCHIP MCS7xxx serial driver
407device	moscom: ucombus
408attach	moscom at usbdevif
409file	dev/usb/moscom.c		moscom
410
411# andother driver for the same chip
412device	umcs: ucombus
413attach	umcs at usbdevif
414file	dev/usb/umcs.c			umcs
415
416# SUNTAC Slipper U VS-10U driver
417device	uvscom: ucombus
418attach	uvscom at usbdevif
419file	dev/usb/uvscom.c		uvscom
420
421# Belkin & other serial driver
422define	ubsa_common
423file	dev/usb/ubsa_common.c		ubsa_common
424device	ubsa: ucombus, ubsa_common
425attach	ubsa at usbdevif
426file	dev/usb/ubsa.c			ubsa
427
428# Huawei E220 3G/HSDPA modem (ubsa)
429device	uhmodem: ucombus, ubsa_common
430attach	uhmodem at usbifif
431file	dev/usb/uhmodem.c		uhmodem
432
433# iPAQ PDAs
434device	uipaq: ucombus
435attach	uipaq at usbdevif
436file	dev/usb/uipaq.c			uipaq
437
438# Kyocera AIR-EDGE PHONE
439device	ukyopon: ucombus, umodem_common
440attach	ukyopon at usbifif
441file	dev/usb/ukyopon.c		ukyopon
442
443# ArkMicroChips 3116 based serial (used with some Nokia USB cables too)
444device	uark: ucombus
445attach	uark at usbdevif
446file	dev/usb/uark.c		uark
447
448# Silicon Labs CP210x serial driver
449device	uslsa: ucombus
450attach	uslsa at usbifif
451file	dev/usb/uslsa.c			uslsa
452
453# WinChipHead CH341/340 serial driver
454device	uchcom: ucombus
455attach	uchcom at usbdevif
456file	dev/usb/uchcom.c		uchcom
457
458# Scanners
459# Generic scanner support
460device	uscanner
461attach	uscanner at usbdevif
462file	dev/usb/uscanner.c		uscanner		needs-flag
463
464# Avision SCSI over USB, HP5300
465device	usscanner: scsi
466attach	usscanner at usbdevif
467file	dev/usb/usscanner.c		usscanner
468
469# Atmel AT76c503 / AT76c503a / AT76c505 / AT76c505a @ USB
470device	atu: ether, ifnet, arp, wlan
471attach	atu at usbdevif
472file	dev/usb/if_atu.c		atu
473
474# Intersil PrismGT
475device	upgt: ether, ifnet, arp, wlan, firmload
476attach	upgt at usbdevif
477file	dev/usb/if_upgt.c		upgt
478
479# SMSC LAN95xx
480device	usmsc: arp, ether, ifnet, mii, mii_phy
481attach	usmsc at usbdevif
482file	dev/usb/if_smsc.c		usmsc
483
484# Ralink Technology RT2500USB
485device	ural: arp, ether, ifnet, wlan, firmload
486attach	ural at usbdevif
487file	dev/usb/if_ural.c		ural
488
489device	rum: ether, ifnet, arp, wlan, firmload
490attach	rum at usbdevif
491file	dev/usb/if_rum.c		rum
492
493# Topfield digital PVRs
494device	utoppy
495attach	utoppy at usbdevif
496file	dev/usb/utoppy.c		utoppy
497
498# Zydas ZD1211
499device	zyd: ether, ifnet, arp, wlan, firmload
500attach	zyd at usbdevif
501file	dev/usb/if_zyd.c		zyd
502
503# DisplayLink DL-1x0/DL-1x5
504device	udl: wsemuldisplaydev, rasops16, edid, firmload
505attach	udl at usbdevif
506file	dev/usb/udl.c			udl
507
508# Wireless WAN modems from Option N.V.
509device	uhso: ifnet
510attach	uhso at usbdevif
511file	dev/usb/uhso.c			uhso
512
513# Maywa-denki/Kayac YUREX
514device	uyurex: hid
515attach	uyurex at uhidbus
516file	dev/usb/uyurex.c		uyurex
517
518# Microsoft RNDIS
519device	urndis: arp, ether, ifnet
520attach	urndis at usbifif
521file	dev/usb/if_urndis.c		urndis
522
523# Realtek RTL8188CU/RTL8192CU
524device	urtwn: ether, ifnet, arp, wlan, firmload
525attach	urtwn at usbdevif
526file	dev/usb/if_urtwn.c              urtwn
527
528# Realtek RTL8187/RTL8187B 802.11b/g USB wireless adapter
529device	urtw: ether, ifnet, arp, wlan
530attach	urtw at usbdevif
531file	dev/usb/if_urtw.c		urtw
532
533# Ralink Technology RT2700U/RT2800U/RT3000U
534device	run: ether, ifnet, arp, wlan, firmload
535attach	run at usbdevif
536file	dev/usb/if_run.c		run
537
538# Atheros AR9002U
539attach	athn at usbdevif with athn_usb: firmload
540file	dev/usb/if_athn_usb.c		athn_usb		needs-flag
541
542# XXX: ljt
543# Realtek RTL8188SU/RTL8191SU/RTL8192SU
544device	rsu: arp, ether, firmload, ifnet, wlan
545attach	rsu at usbdevif
546file	dev/usb/if_rsu.c		rsu
547
548# KingSun/DonShine IrDA adaptors
549device	udsir: irbus, irdasir
550attach	udsir at usbifif
551file	dev/usb/udsir.c			udsir
552