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