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