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