files.usb revision 1.122
11.122Schristos#	$NetBSD: files.usb,v 1.122 2012/05/29 14:06:23 christos Exp $
21.1Saugustss#
31.1Saugustss# Config file and device description for machine-independent USB code.
41.1Saugustss# Included by ports that need it.  Ports that use it must provide
51.1Saugustss# their own "major" declarations for the appropriate devices.
61.1Saugustss
71.31Slukemdefflag	USBVERBOSE
81.103Smattdefflag	opt_usb.h	USB_FRAG_DMA_WORKAROUND
91.106Smattdefflag	opt_usb.h	EHCI_DEBUG OHCI_DEBUG UHCI_DEBUG UHUB_DEBUG USB_DEBUG
101.1Saugustss
111.88Sjmcneilldefflag	opt_uvideo.h	UVIDEO_DEBUG
121.114Schristosdefflag	opt_umass.h	UMASS_DEBUG
131.88Sjmcneill
141.83Sdrochnerdefine	usbroothubif { }
151.71Sdrochnerdefine	usbdevif { [port = -1], [configuration = -1], [interface = -1],
161.71Sdrochner		   [vendor = -1], [product = -1], [release = -1] }
171.74Sdrochnerdefine	usbifif { [port = -1], [configuration = -1], [interface = -1],
181.74Sdrochner		  [vendor = -1], [product = -1], [release = -1] }
191.71Sdrochner
201.83Sdrochnerdevice	usb: usbroothubif
211.1Saugustssattach	usb at usbus
221.28Slukemfile	dev/usb/usb.c			usb			needs-flag
231.1Saugustssfile	dev/usb/usbdi.c			usb
241.1Saugustssfile	dev/usb/usbdi_util.c		usb
251.105Stsutsuifile	dev/usb/usb_mem.c		usb & usb_dma
261.1Saugustssfile	dev/usb/usb_subr.c		usb
271.1Saugustssfile	dev/usb/usb_quirks.c		usb
281.98Spgoyettefile	dev/usb/usb_verbose.c		usb & usbverbose
291.1Saugustss
301.1Saugustss# Hub driver
311.74Sdrochnerdevice	uhub: usbdevif, usbifif
321.83Sdrochnerattach	uhub at usbroothubif with uroothub
331.71Sdrochnerattach	uhub at usbdevif
341.1Saugustssfile	dev/usb/uhub.c			usb
351.1Saugustss
361.14Saugustss# Modem and com serial port "bus"
371.14Saugustssdefine	ucombus {[ portno = -1 ]}
381.23Saugustss
391.23Saugustss# EZ-USB firmware loader
401.23Saugustssdefine	ezload
411.23Saugustssfile	dev/usb/ezload.c		ezload
421.14Saugustss
431.3Saugustss# Audio devices
441.44Saugustssdevice	uaudio: audiobus, auconv, mulaw, aurateconv
451.74Sdrochnerattach	uaudio at usbifif
461.3Saugustssfile	dev/usb/uaudio.c		uaudio
471.27Stshiozak
481.27Stshiozak# MIDI devices
491.27Stshiozakdevice	umidi: midibus
501.74Sdrochnerattach	umidi at usbifif
511.27Stshiozakfile	dev/usb/umidi.c			umidi
521.27Stshiozakfile	dev/usb/umidi_quirks.c		umidi
531.3Saugustss
541.14Saugustss# Modem and com serial port
551.14Saugustssdevice	ucom
561.14Saugustssattach	ucom at ucombus
571.28Slukemfile	dev/usb/ucom.c			ucom | ucombus		needs-flag
581.14Saugustss
591.25Saugustss
601.3Saugustss# Generic devices
611.3Saugustssdevice	ugen
621.71Sdrochnerattach	ugen at usbdevif
631.28Slukemfile	dev/usb/ugen.c			ugen			needs-flag
641.1Saugustss
651.25Saugustss
661.25Saugustss# HID
671.37Saugustss# HID "bus"
681.37Saugustssdefine	uhidbus {[ reportid = -1 ]}
691.37Saugustss
701.36Saugustss# HID root device for multiple report IDs
711.37Saugustssdevice	uhidev: hid, uhidbus
721.74Sdrochnerattach	uhidev at usbifif
731.36Saugustssfile	dev/usb/uhidev.c		uhidev
741.36Saugustss
751.1Saugustss# Generic HID devices
761.37Saugustssdevice	uhid: hid
771.36Saugustssattach	uhid at uhidbus
781.28Slukemfile	dev/usb/uhid.c			uhid			needs-flag
791.1Saugustss
801.3Saugustss# Keyboards
811.61Scubedefparam	UKBD_LAYOUT
821.116Smacallan# Gdium's Fn key needs software translation
831.116Smacallandefflag		opt_ukbd.h 	GDIUM_KEYBOARD_HACK
841.37Saugustssdevice	ukbd: hid, wskbddev
851.36Saugustssattach	ukbd at uhidbus
861.28Slukemfile	dev/usb/ukbd.c			ukbd			needs-flag
871.67Sgdamorefile	dev/usb/ukbdmap.c		ukbd | btkbd
881.3Saugustss
891.25Saugustss# Mice
901.37Saugustssdevice	ums: hid, wsmousedev
911.36Saugustssattach	ums at uhidbus
921.25Saugustssfile	dev/usb/ums.c			ums
931.25Saugustss
941.119Schristos# Touchscreens
951.120Swizdevice	uts: hid, wsmousedev, tpcalib
961.119Schristosattach	uts at uhidbus
971.119Schristosfile	dev/usb/uts.c			uts
981.119Schristos
991.53Stsarna# eGalax USB Touch Panel
1001.54Stsarnadevice	uep: wsmousedev, tpcalib
1011.71Sdrochnerattach	uep at usbdevif
1021.53Stsarnafile	dev/usb/uep.c			uep			needs-flag
1031.25Saugustss
1041.64Sskrll# Cypress microcontroller based serial adpaters
1051.64Sskrlldevice	ucycom: hid
1061.64Sskrllattach	ucycom at uhidbus
1071.64Sskrllfile	dev/usb/ucycom.c		ucycom			needs-flag
1081.64Sskrll
1091.1Saugustss# Printers
1101.2Saugustssdevice	ulpt
1111.74Sdrochnerattach	ulpt at usbifif
1121.28Slukemfile	dev/usb/ulpt.c			ulpt			needs-flag
1131.7Saugustss
1141.25Saugustss
1151.7Saugustss# Mass storage
1161.52Sbouyerdevice	umass: scsi, atapi, ata_hl
1171.74Sdrochnerattach	umass at usbifif
1181.10Saugustssfile	dev/usb/umass.c			umass
1191.35Saugustssfile	dev/usb/umass_isdata.c		umass & wd
1201.33Sgehennafile	dev/usb/umass_quirks.c		umass
1211.34Saugustssfile	dev/usb/umass_scsipi.c		umass & (scsibus | atapibus)
1221.32Saugustss
1231.32Saugustss
1241.32Saugustss# IrDA bridges
1251.32Saugustssdevice	uirda: irbus
1261.74Sdrochnerattach	uirda at usbifif
1271.76Sisfile	dev/usb/uirda.c			uirda | stuirda
1281.76Sis
1291.76Sis# SigmaTel not quite UIRDA IrDA bridge
1301.76Sisdevice	stuirda: irbus,firmload
1311.76Sisattach	stuirda at usbifif
1321.76Sisfile	dev/usb/stuirda.c		stuirda
1331.39Saugustss
1341.39Saugustss# SigmaTel IrDA bridge
1351.39Saugustssdevice	ustir: irbus, irdasir
1361.71Sdrochnerattach	ustir at usbdevif
1371.39Saugustssfile	dev/usb/ustir.c			ustir
1381.45Saugustss
1391.109Sjmcneill# Windows Media Center IR tranceivers
1401.109Sjmcneilldevice	irmce: irbus
1411.109Sjmcneillattach	irmce at usbifif
1421.109Sjmcneillfile	dev/usb/irmce.c			irmce
1431.109Sjmcneill
1441.45Saugustss
1451.67Sgdamore# Bluetooth controllers
1461.70Splunkydevice	ubt: btbus, bluetooth
1471.71Sdrochnerattach	ubt at usbdevif
1481.45Saugustssfile	dev/usb/ubt.c			ubt
1491.46Saugustss
1501.112Sjakllsch# Atheros USB Bluetooth firmware load
1511.112Sjakllschdevice	aubtfwl: firmload
1521.112Sjakllschattach	aubtfwl at usbdevif
1531.112Sjakllschfile	dev/usb/aubtfwl.c		aubtfwl
1541.112Sjakllsch
1551.86Sjmcneill#
1561.86Sjmcneill# Capture devices
1571.86Sjmcneill#
1581.86Sjmcneill
1591.86Sjmcneill# Sony PLAYSTATION(R) Eye
1601.86Sjmcneilldevice	pseye: videobus
1611.86Sjmcneillattach	pseye at usbifif
1621.86Sjmcneillfile	dev/usb/pseye.c			pseye
1631.20Saugustss
1641.87Sjmcneill# USB Video Class capture devices
1651.87Sjmcneilldevice	uvideo: videobus
1661.87Sjmcneillattach	uvideo at usbifif
1671.87Sjmcneillfile	dev/usb/uvideo.c		uvideo
1681.87Sjmcneill
1691.104Sjmcneill# Auvitek AU0828
1701.115Sjmcneilldevice	auvitek: videobus, dtvbus, i2cbus, i2cexec, usbifif, au8522, xc5k
1711.104Sjmcneillattach	auvitek at usbdevif
1721.104Sjmcneillfile	dev/usb/auvitek.c		auvitek
1731.104Sjmcneillfile	dev/usb/auvitek_audio.c		auvitek
1741.104Sjmcneillfile	dev/usb/auvitek_board.c		auvitek
1751.107Sjmcneillfile	dev/usb/auvitek_dtv.c		auvitek
1761.104Sjmcneillfile	dev/usb/auvitek_i2c.c		auvitek
1771.104Sjmcneillfile	dev/usb/auvitek_video.c		auvitek
1781.104Sjmcneill
1791.108Sjmcneill# Empia EM28xx
1801.108Sjmcneilldevice	emdtv: dtvbus, irbus, i2cexec, lg3303, xc3028
1811.108Sjmcneillattach	emdtv at usbdevif
1821.108Sjmcneillfile	dev/usb/emdtv.c			emdtv
1831.108Sjmcneillfile	dev/usb/emdtv_board.c		emdtv
1841.108Sjmcneillfile	dev/usb/emdtv_dtv.c		emdtv
1851.108Sjmcneillfile	dev/usb/emdtv_i2c.c		emdtv
1861.108Sjmcneillfile	dev/usb/emdtv_ir.c		emdtv
1871.108Sjmcneill
1881.86Sjmcneill#
1891.25Saugustss# Misc
1901.86Sjmcneill#
1911.86Sjmcneill
1921.20Saugustss# Diamond Multimedia Rio 500
1931.20Saugustssdevice	urio
1941.71Sdrochnerattach	urio at usbdevif
1951.28Slukemfile	dev/usb/urio.c			urio			needs-flag
1961.17Saugustss
1971.117Schristos# Apple iPad
1981.117Schristosdevice	uipad
1991.117Schristosattach	uipad at usbdevif
2001.117Schristosfile	dev/usb/uipad.c				uipad
2011.117Schristos
2021.84Schristos# BlackBerries
2031.84Schristosdevice	uberry
2041.84Schristosattach	uberry at usbdevif
2051.84Schristosfile	dev/usb/uberry.c			uberry
2061.84Schristos
2071.17Saugustss# Handspring Visor
2081.17Saugustssdevice	uvisor: ucombus
2091.71Sdrochnerattach	uvisor at usbdevif
2101.17Saugustssfile	dev/usb/uvisor.c		uvisor
2111.13Saugustss
2121.57Selric# Generic Serial Adapter
2131.57Selricdevice	ugensa: ucombus
2141.71Sdrochnerattach	ugensa at usbdevif
2151.57Selricfile	dev/usb/ugensa.c		ugensa
2161.57Selric
2171.94Smartin# 3G Modem
2181.90Sjoergdevice	u3g: ucombus
2191.94Smartinattach	u3g at usbifif
2201.94Smartindevice	u3ginit
2211.94Smartinattach	u3ginit at usbdevif
2221.94Smartinfile	dev/usb/u3g.c			u3g | u3ginit
2231.90Sjoerg
2241.25Saugustss# YAP phone firmware loader
2251.25Saugustssdevice	uyap: ezload
2261.71Sdrochnerattach	uyap at usbdevif
2271.25Saugustssfile	dev/usb/uyap.c			uyap
2281.38Saugustss
2291.38Saugustss# D-Link DSB-R100 FM radio
2301.40Sdrochnerdevice	udsbr: radiodev
2311.71Sdrochnerattach	udsbr at usbdevif
2321.38Saugustssfile	dev/usb/udsbr.c			udsbr
2331.25Saugustss
2341.95Stonio# TEMPerHUM HID
2351.101Skiyoharadevice	uthum: hid, sysmon_envsys
2361.95Stonioattach	uthum at uhidbus
2371.95Stoniofile	dev/usb/uthum.c			uthum
2381.25Saugustss
2391.13Saugustss# Ethernet adapters
2401.13Saugustss# ADMtek AN986 Pegasus
2411.16Saugustssdevice	aue: arp, ether, ifnet, mii, mii_phy
2421.71Sdrochnerattach	aue at usbdevif
2431.13Saugustssfile	dev/usb/if_aue.c		aue
2441.13Saugustss
2451.55Saugustss# CDC Ethernet
2461.111Sjakllschdevice	cdce: arp, ether, ifnet
2471.111Sjakllschattach	cdce at usbifif
2481.111Sjakllschfile	dev/usb/if_cdce.c		cdce
2491.55Saugustss
2501.13Saugustss# CATC USB-EL1201A
2511.13Saugustssdevice	cue: arp, ether, ifnet
2521.71Sdrochnerattach	cue at usbdevif
2531.13Saugustssfile	dev/usb/if_cue.c		cue
2541.13Saugustss
2551.13Saugustss# Kawasaki LSI KL5KUSB101B
2561.13Saugustssdevice	kue: arp, ether, ifnet
2571.71Sdrochnerattach	kue at usbdevif
2581.13Saugustssfile	dev/usb/if_kue.c		kue
2591.19Saugustss
2601.19Saugustss# Prolific PL2302 host-host
2611.19Saugustssdevice	upl: ifnet
2621.71Sdrochnerattach	upl at usbdevif
2631.19Saugustssfile	dev/usb/if_upl.c		upl
2641.43Sichiro
2651.43Sichiro# Realtek RTL8150L(M)
2661.43Sichirodevice	url: arp, ether, ifnet, mii
2671.71Sdrochnerattach	url at usbdevif
2681.43Sichirofile	dev/usb/if_url.c		url
2691.50Saugustss
2701.50Saugustss# ASIX AX88172
2711.56Saugustssdevice	axe: arp, ether, ifnet, mii, mii_phy
2721.71Sdrochnerattach	axe at usbdevif
2731.56Saugustssfile	dev/usb/if_axe.c		axe
2741.51Sitojun
2751.51Sitojun# DAVICOM DM9601
2761.51Sitojundevice	udav: arp, ether, ifnet, mii, mii_phy
2771.71Sdrochnerattach	udav at usbdevif
2781.51Sitojunfile	dev/usb/if_udav.c		udav
2791.21Saugustss
2801.102Schristos# Atheros AR9170
2811.102Schristosdevice	otus: arp, ether, firmload, ifnet, wlan
2821.102Schristosattach	otus at usbdevif
2831.102Schristosfile	dev/usb/if_otus.c		otus
2841.25Saugustss
2851.21Saugustss# Serial drivers
2861.25Saugustss# Modems
2871.59Sitohydefine	umodem_common
2881.59Sitohyfile	dev/usb/umodem_common.c		umodem_common
2891.59Sitohydevice	umodem: ucombus, umodem_common
2901.74Sdrochnerattach	umodem at usbifif
2911.25Saugustssfile	dev/usb/umodem.c		umodem
2921.25Saugustss
2931.21Saugustss# FTDI serial driver
2941.21Saugustssdevice	uftdi: ucombus
2951.71Sdrochnerattach	uftdi at usbdevif
2961.21Saugustssfile	dev/usb/uftdi.c			uftdi
2971.22Saugustss
2981.26Sichiro# Prolific PL2303 serial driver
2991.26Sichirodevice	uplcom: ucombus
3001.71Sdrochnerattach	uplcom at usbdevif
3011.26Sichirofile	dev/usb/uplcom.c		uplcom
3021.29Sichiro
3031.29Sichiro# MCT USB-232 serial driver
3041.29Sichirodevice	umct: ucombus
3051.71Sdrochnerattach	umct at usbdevif
3061.29Sichirofile	dev/usb/umct.c			umct
3071.42Saugustss
3081.91Smrg# MOSCHIP MCS7xxx serial driver
3091.91Smrgdevice	moscom: ucombus
3101.91Smrgattach	moscom at usbdevif
3111.91Smrgfile	dev/usb/moscom.c		moscom
3121.91Smrg
3131.42Saugustss# SUNTAC Slipper U VS-10U driver
3141.42Saugustssdevice	uvscom: ucombus
3151.71Sdrochnerattach	uvscom at usbdevif
3161.42Saugustssfile	dev/usb/uvscom.c		uvscom
3171.49Saugustss
3181.49Saugustss# Belkin & other serial driver
3191.82Sichirodefine	ubsa_common
3201.82Sichirofile	dev/usb/ubsa_common.c		ubsa_common
3211.82Sichirodevice	ubsa: ucombus, ubsa_common
3221.85Sdrochnerattach	ubsa at usbdevif
3231.49Saugustssfile	dev/usb/ubsa.c			ubsa
3241.36Saugustss
3251.82Sichiro# Huawei E220 3G/HSDPA modem (ubsa)
3261.82Sichirodevice	uhmodem: ucombus, ubsa_common
3271.82Sichiroattach	uhmodem at usbifif
3281.82Sichirofile	dev/usb/uhmodem.c		uhmodem
3291.82Sichiro
3301.63Saugustss# iPAQ PDAs
3311.111Sjakllschdevice	uipaq: ucombus
3321.111Sjakllschattach	uipaq at usbdevif
3331.111Sjakllschfile	dev/usb/uipaq.c			uipaq
3341.63Saugustss
3351.60Sitohy# Kyocera AIR-EDGE PHONE
3361.60Sitohydevice	ukyopon: ucombus, umodem_common
3371.74Sdrochnerattach	ukyopon at usbifif
3381.60Sitohyfile	dev/usb/ukyopon.c		ukyopon
3391.60Sitohy
3401.99Smartin# ArkMicroChips 3116 based serial (used with some Nokia USB cables too)
3411.99Smartindevice	uark: ucombus
3421.99Smartinattach	uark at usbdevif
3431.99Smartinfile	dev/usb/uark.c		uark
3441.99Smartin
3451.77Sdogcow# Silicon Labs CP210x serial driver
3461.77Sdogcowdevice	uslsa: ucombus
3471.118Sjakllschattach	uslsa at usbifif
3481.77Sdogcowfile	dev/usb/uslsa.c			uslsa
3491.25Saugustss
3501.80Stshiozak# WinChipHead CH341/340 serial driver
3511.80Stshiozakdevice	uchcom: ucombus
3521.80Stshiozakattach	uchcom at usbdevif
3531.80Stshiozakfile	dev/usb/uchcom.c		uchcom
3541.80Stshiozak
3551.22Saugustss# Scanners
3561.25Saugustss# Generic scanner support
3571.22Saugustssdevice	uscanner
3581.71Sdrochnerattach	uscanner at usbdevif
3591.28Slukemfile	dev/usb/uscanner.c		uscanner		needs-flag
3601.24Saugustss
3611.25Saugustss# Avision SCSI over USB, HP5300
3621.25Saugustssdevice	usscanner: scsi
3631.71Sdrochnerattach	usscanner at usbdevif
3641.25Saugustssfile	dev/usb/usscanner.c		usscanner
3651.58Sjoff
3661.58Sjoff# Atmel AT76c503 / AT76c503a / AT76c505 / AT76c505a @ USB
3671.58Sjoffdevice	atu: ether, ifnet, arp, wlan
3681.71Sdrochnerattach	atu at usbdevif
3691.58Sjofffile	dev/usb/if_atu.c		atu
3701.62Sdrochner
3711.100Stsutsui# Intersil PrismGT
3721.100Stsutsuidevice	upgt: ether, ifnet, arp, wlan, firmload
3731.100Stsutsuiattach	upgt at usbdevif
3741.100Stsutsuifile	dev/usb/if_upgt.c		upgt
3751.100Stsutsui
3761.62Sdrochner# Ralink Technology RT2500USB
3771.71Sdrochnerattach	ral at usbdevif with ural
3781.62Sdrochnerfile	dev/usb/if_ural.c		ural
3791.66Sscw
3801.75Sjnemethdevice	rum: ether, ifnet, arp, wlan, firmload
3811.72Sjoergattach	rum at usbdevif
3821.72Sjoergfile	dev/usb/if_rum.c		rum
3831.72Sjoerg
3841.66Sscw# Topfield digital PVRs
3851.66Sscwdevice	utoppy
3861.71Sdrochnerattach	utoppy at usbdevif
3871.66Sscwfile	dev/usb/utoppy.c		utoppy
3881.73Sjmcneill
3891.78Skiyohara# Zydas ZD1211
3901.78Skiyoharadevice	zyd: ether, ifnet, arp, wlan, firmload
3911.78Skiyoharaattach	zyd at usbdevif
3921.78Skiyoharafile	dev/usb/if_zyd.c		zyd
3931.92Stsutsui
3941.92Stsutsui# DisplayLink DL-1x0/DL-1x5
3951.92Stsutsuidevice	udl: wsemuldisplaydev, rasops16, edid, firmload
3961.92Stsutsuiattach	udl at usbdevif
3971.92Stsutsuifile	dev/usb/udl.c			udl
3981.96Splunky
3991.96Splunky# Wireless WAN modems from Option N.V.
4001.96Splunkydevice	uhso: ifnet
4011.96Splunkyattach	uhso at usbdevif
4021.96Splunkyfile	dev/usb/uhso.c			uhso
4031.97Senami
4041.97Senami# Maywa-denki/Kayac YUREX
4051.97Senamidevice	uyurex: hid
4061.97Senamiattach	uyurex at uhidbus
4071.97Senamifile	dev/usb/uyurex.c		uyurex
4081.110Sjakllsch
4091.110Sjakllsch# Microsoft RNDIS
4101.110Sjakllschdevice	urndis: arp, ether, ifnet
4111.110Sjakllschattach	urndis at usbifif
4121.110Sjakllschfile	dev/usb/if_urndis.c		urndis
4131.121Snonaka
4141.121Snonaka# Realtek RTL8188CU/RTL8192CU
4151.121Snonakadevice	urtwn: ether, ifnet, arp, wlan, firmload
4161.121Snonakaattach	urtwn at usbdevif
4171.121Snonakafile	dev/usb/if_urtwn.c              urtwn
4181.122Schristos
4191.122Schristos# Realtek RTL8187/RTL8187B 802.11b/g USB wireless adapter
4201.122Schristosdevice	urtw: ether, ifnet, arp, wlan
4211.122Schristosattach	urtw at usbdevif
4221.122Schristosfile	dev/usb/if_urtw.c		urtw
423