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