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