files.pci revision 1.181
1# $NetBSD: files.pci,v 1.181 2002/10/11 00:57:59 thorpej Exp $ 2# 3# Config file and device description for machine-independent PCI code. 4# Included by ports that need it. Requires that the SCSI files be 5# defined first. 6 7defflag opt_pci.h PCIVERBOSE PCI_CONFIG_DUMP PCI_NETBSD_CONFIGURE 8defparam opt_pci.h PCI_NETBSD_ENABLE_IDE 9 10defflag opt_bktr.h BKTR_430_FX_MODE BKTR_GPIO_ACCESS BKTR_NO_MSP_RESET 11 BKTR_REVERSE_MUTE BKTR_SIS_VIA_MODE BKTR_USE_PLL 12defparam opt_bktr.h BKTR_OVERRIDE_CARD BKTR_OVERRIDE_TUNER BKTR_OVERRIDE_DBX 13 BKTR_OVERRIDE_MSP BKTR_SYSTEM_DEFAULT 14 15defflag opt_pciide.h PCIIDE_CMD064x_DISABLE PCIIDE_AMD756_ENABLEDMA 16 PCIIDE_CMD0646U_ENABLEUDMA 17 18device pci {[dev = -1], [function = -1]} 19attach pci at pcibus 20file dev/pci/pci.c pci needs-flag 21file dev/pci/pci_map.c pci 22file dev/pci/pci_quirks.c pci 23file dev/pci/pci_subr.c pci 24file dev/pci/pci_usrreq.c pci 25file dev/pci/pciconf.c pci & pci_netbsd_configure 26 27# Cypress 82c693 hyperCache(tm) Stand-Alone PCI Peripheral Controller 28# with USB. This is a combo chip: 29# 30# PCI-ISA bridge 31# PCI IDE controller 32# OHCI USB controller 33# 34# There are some common subroutines that each function needs. 35define cy82c693 36file dev/pci/cy82c693.c cy82c693 37 38# Adaptec 3940, 2940, and aic78[5678]0 SCSI controllers 39# device declaration in sys/conf/files 40attach ahc at pci with ahc_pci: ahc_seeprom, smc93cx6 41file dev/pci/ahc_pci.c ahc_pci 42 43# I2O adapters 44attach iop at pci with iop_pci 45file dev/pci/iop_pci.c iop_pci 46 47# 3ware RAID controllers 48device twe {unit = -1} 49attach twe at pci 50file dev/pci/twe.c twe 51 52attach ld at twe with ld_twe 53file dev/pci/ld_twe.c ld_twe 54 55# AMI RAID controllers 56device amr {unit = -1} 57attach amr at pci 58file dev/pci/amr.c amr 59 60attach ld at amr with ld_amr 61file dev/pci/ld_amr.c ld_amr 62 63# Compaq RAID controllers 64attach cac at pci with cac_pci 65file dev/pci/cac_pci.c cac_pci 66 67# Mylex DAC960 RAID controllers 68attach mlx at pci with mlx_pci 69file dev/pci/mlx_pci.c mlx_pci 70 71# Newer Mylex AcceleRAID and eXtremeRAID controllers 72device mly: scsi 73attach mly at pci 74file dev/pci/mly.c mly needs-flag 75 76# ICP-Vortex/Intel RAID controllers 77attach icp at pci with icp_pci 78file dev/pci/icp_pci.c icp_pci 79 80# Adaptec FSA RAID controllers 81attach aac at pci with aac_pci 82file dev/pci/aac_pci.c aac_pci 83 84# DPT EATA SCSI controllers 85attach dpt at pci with dpt_pci 86file dev/pci/dpt_pci.c dpt_pci 87 88# AdvanSys 1200A, 1200B, and ULTRA SCSI controllers 89# device declaration in sys/conf/files 90attach adv at pci with adv_pci 91file dev/pci/adv_pci.c adv_pci 92 93# AdvanSys ULTRA WIDE SCSI controllers 94# device declaration in sys/conf/files 95attach adw at pci with adw_pci 96file dev/pci/adw_pci.c adw_pci 97file dev/ic/adwlib.c adw_pci 98file dev/ic/adwmcode.c adw_pci 99 100# AMD Am53c974 PCscsi-PCI SCSI controllers 101device pcscp: scsi, ncr53c9x 102attach pcscp at pci 103file dev/pci/pcscp.c pcscp 104 105# BusLogic BT-9xx PCI family 106# device declaration in sys/conf/files 107attach bha at pci with bha_pci 108file dev/pci/bha_pci.c bha_pci 109 110# Qlogic ISP 10x0 (PCI) family 111# device declaration in sys/conf/files 112attach isp at pci with isp_pci 113file dev/pci/isp_pci.c isp_pci 114 115# LSILogic Fusion-MPT I/O Processor family 116# device declaration in sys/conf/files 117attach lfmiop at pci with lfmiop_pci 118file dev/pci/lfmiop_pci.c lfmiop_pci 119 120# Ethernet driver for DC21040-based boards 121device de: ether, ifnet, arp 122attach de at pci 123file dev/pci/if_de.c de 124 125# Efficient Networks, Inc. ATM interface 126# device declaration in sys/conf/files 127attach en at pci with en_pci 128file dev/pci/if_en_pci.c en_pci 129 130# 3Com 3c590 and 3c595 Ethernet controllers 131# device declaration in sys/conf/files 132attach ep at pci with ep_pci 133file dev/pci/if_ep_pci.c ep_pci 134 135# 3Com 3c90x[B] Ethernet controllers 136# device declaration in sys/conf/files 137attach ex at pci with ex_pci 138file dev/pci/if_ex_pci.c ex_pci 139 140# Digital DEFPA PCI FDDI Controller 141device fpa: pdq, fddi, ifnet, arp 142attach fpa at pci 143file dev/pci/if_fpa.c fpa 144 145# AMD am7990 (LANCE) -based Ethernet controllers 146# device declaration in sys/conf/files 147attach le at pci with le_pci: le32 148file dev/pci/if_le_pci.c le_pci 149 150# AMD PCnet-PCI Ethernet controller family 151# Supersedes if_le_pci.c 152device pcn: ether, ifnet, arp, mii 153attach pcn at pci 154file dev/pci/if_pcn.c pcn 155 156# common code for siop/esiop pci front end 157define siop_pci_common 158file dev/pci/siop_pci_common.c siop_pci_common 159 160# Symbios 53c8xx SCSI chips 161# device declaration in sys/conf/files 162attach siop at pci with siop_pci: siop_pci_common 163file dev/pci/siop_pci.c siop_pci 164attach esiop at pci with esiop_pci: siop_pci_common 165file dev/pci/esiop_pci.c esiop_pci 166 167# Initio INIC-940/950 SCSI controllers 168attach iha at pci with iha_pci 169file dev/pci/iha_pci.c iha_pci 170 171# Tekram DC-395U/UW/F and DC-315/U SCSI controllers 172device trm: scsi 173attach trm at pci 174file dev/pci/trm.c trm 175 176# Guillemot Maxi Radio FM 2000 Radio Card 177device gtp: radiodev, tea5757 178attach gtp at pci 179file dev/pci/gtp.c gtp 180 181# MediaForte SoundForte SF64-PCR Radio card 182#device sf4r: radiodev, tea5757 183#attach sf4r at pci 184#file dev/pci/sf64pcr.c sf4r 185 186# PCI IDE controllers 187device pciide {[channel = -1]}: cy82c693, wdc_base, ata, atapi 188attach pciide at pci 189file dev/pci/pciide.c pciide 190 191# PCI-PCI bridge chips 192device ppb: pcibus 193attach ppb at pci 194file dev/pci/ppb.c ppb 195 196# Cyclades Cyclom-8/16/32 197attach cy at pci with cy_pci 198file dev/pci/cy_pci.c cy_pci 199 200# Cyclades-Z series of intelligent multi-port serial adapters 201device cz 202attach cz at pci 203file dev/pci/cz.c cz needs-flag 204 205# Intel EtherExpress PRO 10/100B 206attach fxp at pci with fxp_pci 207file dev/pci/if_fxp_pci.c fxp_pci 208 209# Sun HME-network 210attach hme at pci with hme_pci 211file dev/pci/if_hme_pci.c hme_pci 212 213# Sun GEM-network 214attach gem at pci with gem_pci 215file dev/pci/if_gem_pci.c gem_pci 216 217# NE2000-compatible PCI Ethernet cards 218defparam opt_ipkdb.h IPKDB_NE_PCISLOT 219defflag opt_ipkdb.h IPKDB_NE_PCI : IPKDB_NE 220attach ne at pci with ne_pci: rtl80x9 221file dev/pci/if_ne_pci.c ne_pci | ipkdb_ne_pci 222 223# Texas Instruments ThunderLAN Chip. 224device tl: ether, ifnet, arp, i2c, i2c_eeprom, mii, mii_bitbang 225attach tl at pci 226file dev/pci/if_tl.c tl 227 228# SDL Communications N2 PCI Network Interface 229# device declaration in sys/conf/files 230attach ntwoc at pci with ntwoc_pci 231file dev/pci/if_ntwoc_pci.c ntwoc_pci 232 233# Lan Media Corporation T1/HSSI/DS3 driver 234device lmc: ifnet, sppp 235attach lmc at pci 236file dev/pci/if_lmc.c lmc 237file dev/pci/if_lmc_common.c lmc 238file dev/pci/if_lmc_media.c lmc 239file dev/pci/if_lmc_nbsd.c lmc 240 241# Essential Communications HIPPI interface 242# device declaration in sys/conf/files 243attach esh at pci with esh_pci 244file dev/pci/if_esh_pci.c esh_pci 245 246# generic PCI VGA 247attach vga at pci with vga_pci 248file dev/pci/vga_pci.c vga_pci needs-flag 249 250# DEC TGA 251device tga: wsemuldisplaydev, rasops8, rasops32 252attach tga at pci 253file dev/pci/tga.c tga needs-flag 254file dev/pci/tga_conf.c tga 255file dev/ic/bt485.c tga 256file dev/ic/bt463.c tga 257file dev/ic/ibm561.c tga 258 259# Integraphics Systems IGA168x and CyberPro framebuffers (linear non-VGA mode) 260# device declaration in sys/conf/files 261attach igsfb at pci with igsfb_pci 262file dev/pci/igsfb_pci.c igsfb_pci 263 264# Brooktree Bt848 video capture 265device bktr: pcibus, radiodev 266attach bktr at pci 267file dev/pci/bktr/bktr_audio.c bktr 268file dev/pci/bktr/bktr_card.c bktr 269file dev/pci/bktr/bktr_core.c bktr 270file dev/pci/bktr/bktr_os.c bktr needs-flag 271file dev/pci/bktr/bktr_tuner.c bktr 272 273# Cirrus Logic CrystalClear PCI Audio CS4280 274device clcs: audiobus, auconv, mulaw, ac97, midibus 275attach clcs at pci 276file dev/pci/cs4280.c clcs 277 278# Cirrus Logic CrystalClear PCI Audio CS4281 279device clct: audiobus, auconv, mulaw, ac97 280attach clct at pci 281file dev/pci/cs4281.c clct 282 283# Shared code for Cirrus Logic CrystalClear PCI Audio CS4280 and CS4281 284file dev/pci/cs428x.c clcs | clct 285 286# Forte Media FM801 287device fms { }: audiobus, auconv, mulaw, ac97, midibus 288attach fms at pci 289file dev/pci/fms.c fms 290 291attach opl at fms with opl_fms 292file dev/pci/opl_fms.c opl_fms 293 294attach mpu at fms with mpu_fms 295file dev/pci/mpu_fms.c mpu_fms 296 297# Ensoniq AudioPCI S5016 298device eap: audiobus, auconv, mulaw, ac97, midibus 299attach eap at pci 300file dev/pci/eap.c eap 301 302# Avance Logic ALS4000 audio 303device als: audiobus, auconv, mulaw 304attach als at pci 305file dev/pci/als.c als 306 307# Intel ICH AC'97 audio 308device auich: audiobus, auconv, mulaw, ac97, aurateconv 309attach auich at pci 310file dev/pci/auich.c auich 311 312# VIA VT82C686A/VT8233/VT8235 AC'97 Audio 313device auvia: audiobus, auconv, mulaw, ac97, aurateconv 314attach auvia at pci 315file dev/pci/auvia.c auvia 316 317# NeoMagic 256 AC'97 Audio 318device neo: audiobus, auconv, mulaw, ac97 319attach neo at pci 320file dev/pci/neo.c neo 321 322# ESS Allegro-1 / Maestro3 323device esa: audiobus, auconv, mulaw, ac97 324attach esa at pci 325file dev/pci/esa.c esa 326 327# ESS Solo-1 PCI AudioDrive 328device eso { }: audiobus, auconv, mulaw, midibus 329attach eso at pci 330file dev/pci/eso.c eso 331 332attach opl at eso with opl_eso 333file dev/pci/opl_eso.c opl_eso 334 335attach mpu at eso with mpu_eso 336file dev/pci/mpu_eso.c mpu_eso 337 338attach joy at eso with joy_eso 339file dev/pci/joy_eso.c joy_eso 340 341# ESS Maestro-1/2/2e PCI AC97 Audio Accelerator 342device esm: audiobus, auconv, mulaw, ac97 343attach esm at pci 344file dev/pci/esm.c esm 345 346# S3 SonicVibes (S3 617) 347device sv { }: audiobus, auconv, mulaw, midibus 348attach sv at pci 349file dev/pci/sv.c sv 350 351attach opl at sv with opl_sv 352file dev/pci/opl_sv.c opl_sv 353 354# C-Media CMI8x38 Audio Chip 355device cmpci { }: audiobus, auconv, mulaw 356attach cmpci at pci 357file dev/pci/cmpci.c cmpci 358 359attach opl at cmpci with opl_cmpci 360file dev/pci/opl_cmpci.c opl_cmpci 361 362attach mpu at cmpci with mpu_cmpci 363file dev/pci/mpu_cmpci.c mpu_cmpci 364 365# Yamaha YMF724/740/744/754 PCI audio controller 366device yds { }: audiobus, auconv, mulaw, ac97 367attach yds at pci 368file dev/pci/yds.c yds 369 370attach opl at yds with opl_yds 371file dev/pci/opl_yds.c opl_yds 372 373attach mpu at yds with mpu_yds 374file dev/pci/mpu_yds.c mpu_yds 375 376# Creative Labs EMU10k1 (SBLive! series and PCI512) 377device emuxki: audiobus, auconv, mulaw, ac97 378attach emuxki at pci 379file dev/pci/emuxki.c emuxki 380 381# Trident 4DWAVE AC'97 audio (including SiS 7018,ALi M5451) 382device autri: audiobus, auconv, mulaw, ac97, midibus 383attach autri at pci 384file dev/pci/autri.c autri 385 386# SMC EPIC/100 Fast Ethernet on PCI 387attach epic at pci with epic_pci 388file dev/pci/if_epic_pci.c epic_pci 389 390# PCI "universal" communication device driver, for PCI com, lpt, etc. ports 391# (see documentation in the driver for what, exactly, should be supported) 392device puc { port = -1 } 393attach puc at pci 394file dev/pci/puc.c puc 395file dev/pci/pucdata.c puc 396 397attach com at puc with com_puc 398file dev/pci/com_puc.c com_puc 399 400# Console device support for puc drivers 401defflag opt_puccn.h PUCCN 402file dev/pci/puccn.c puccn 403 404# XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT 405# XXX BECAUSE NOT 'lpt' IS DEFINED IN files.isa, RATHER THAN files. 406# XXX (when the conf/files and files.isa bogons are fixed, this can 407# XXX be fixed as well.) 408 409# attach lpt at puc with lpt_puc 410# file dev/pci/lpt_puc.c lpt_puc 411 412# UHCI USB controller 413attach uhci at pci with uhci_pci 414file dev/pci/uhci_pci.c uhci_pci 415 416# OHCI USB controller 417attach ohci at pci with ohci_pci 418file dev/pci/ohci_pci.c ohci_pci 419 420# EHCI USB controller 421attach ehci at pci with ehci_pci 422file dev/pci/ehci_pci.c ehci_pci 423 424file dev/pci/usb_pci.c ehci_pci | ehci_cardbus 425 426# OHCI IEEE 1394 controller 427attach fwohci at pci with fwohci_pci 428file dev/pci/fwohci_pci.c fwohci_pci 429 430# IEEE 1394 TI "Lynx" controller 431attach fwlynx at pci with fwlynx_pci 432file dev/pci/fwlynx_pci.c fwlynx_pci 433 434# VIA Rhine/Rhine II Fast Ethernet controllers 435device vr: ether, ifnet, arp, mii, mii_bitbang 436attach vr at pci 437file dev/pci/if_vr.c vr 438 439# SiS 900 Fast Ethernet controllers 440device sip: ether, ifnet, arp, mii 441attach sip at pci 442file dev/pci/if_sip.c sip 443 444# National Semiconductor DP83820 Gigabit Ethernet 445device gsip: ether, ifnet, arp, mii, mii_bitbang 446attach gsip at pci 447file dev/pci/if_gsip.c gsip 448 449# Level One LXT-1001 Gigabit Ethernet 450device glxt: ether, ifnet, arp, mii 451attach glxt at pci 452file dev/pci/if_glxt.c glxt 453 454# Sundance Tech./Tamarack TC9021 Gigabit Ethernet 455device stge: ether, ifnet, arp, mii, mii_bitbang 456attach stge at pci 457file dev/pci/if_stge.c stge 458 459# SysKonnect SKNET-GE Gigabit Ethernet 460device skgec { port = -1 } 461attach skgec at pci 462file dev/pci/if_skge.c skgec 463 464device skge: ether, ifnet, arp, mii 465attach skge at skgec 466 467# Intel i8254x Gigabit Ethernet 468device wm: ether, ifnet, arp, mii, mii_bitbang 469attach wm at pci 470file dev/pci/if_wm.c wm 471 472# Broadcom 570x Gigabit Ethernet 473device bge: ether, ifnet, arp, mii, mii_bitbang 474attach bge at pci 475file dev/pci/if_bge.c bge 476 477# Realtek 8129/8139 Ethernet controllers 478attach rtk at pci with rtk_pci 479file dev/pci/if_rtk_pci.c rtk_pci 480 481# DECchip 21x4x Ethernet controller family, and assorted clones. 482attach tlp at pci with tlp_pci 483file dev/pci/if_tlp_pci.c tlp_pci 484 485# Bit3 PCI-VME mod. 617 486device btvmei: vmebus 487attach btvmei at pci 488file dev/pci/btvmei.c btvmei 489#file dev/pci/btvmei_dma.c btvmei 490#file dev/pci/btvmei_cntlrdma.c btvmei 491 492# Alteon ACEnic Gigabit Ethernet controller 493device ti: ether, ifnet, arp 494attach ti at pci 495file dev/pci/if_ti.c ti 496 497# Adaptec AIC-6915 Ethernet interface 498attach sf at pci with sf_pci 499file dev/pci/if_sf_pci.c sf_pci 500 501# Sundance Tech. ST-201 10/100 Ethernet 502device ste: ether, ifnet, arp, mii, mii_bitbang 503attach ste at pci 504file dev/pci/if_ste.c ste 505 506# YENTA PCI-Cardbus bridge 507#device cbb: cbbus, pcmciabus 508device cbb: pcmciaslot 509attach cbb at pci with cbb_pci 510file dev/pci/pccbb.c cbb 511 512# Tundra Universe PCI-VME adapter 513define univ_pci 514file dev/pci/universe_pci.c univ_pci 515 516# Bit3 PCI-VME mod. 2706 517device btvmeii: vmebus, univ_pci 518attach btvmeii at pci 519file dev/pci/btvmeii.c btvmeii 520 521# VT86C686A power management 522device viapm {} 523attach viapm at pci 524file dev/pci/viapm.c viapm 525 526# hardware monitoring part of viapm 527device viaenv: sysmon_envsys 528attach viaenv at viapm 529file dev/pci/viaenv.c viaenv needs-flag 530 531# AMD 768MPX power management controller 532defflag opt_amdpm.h AMDPM_RND_COUNTERS 533device amdpm {} 534attach amdpm at pci 535file dev/pci/amdpm.c amdpm 536 537# Hi/fn 7751 538device hifn {} 539attach hifn at pci 540file dev/pci/hifn7751.c hifn 541 542# Aironet PC4500/PC4800 543attach an at pci with an_pci 544file dev/pci/if_an_pci.c an_pci 545 546# Intersil Prism2.5 Mini-PCI 547attach wi at pci with wi_pci 548file dev/pci/if_wi_pci.c wi_pci 549 550# ISDN devices 551attach isic at pci with isic_pci 552file dev/pci/isic_pci.c isic_pci 553 554file dev/pci/isic_pci_elsa_qs1p.c isic_pci 555 556device ifpci: isdndev, passive_isdn 557attach ifpci at pci 558file dev/pci/ifpci.c ifpci 559 560# Winbond W6692 561device iwic: isdndev, passive_isdn 562attach iwic at pci with iwic_pci 563file dev/pci/iwic_pci.c iwic 564file dev/pci/iwic_bchan.c iwic 565file dev/pci/iwic_dchan.c iwic 566file dev/pci/iwic_fsm.c iwic 567 568# IrDA devices 569# Toshiba Fast Infrared Type O IrDA driver 570device oboe: irbus, irdasir 571attach oboe at pci 572file dev/pci/oboe.c oboe 573 574# Middle Digital, Inc. PCI-Weasel serial console board control 575# devices (watchdog timer, etc.) 576device weasel: sysmon_wdog 577attach weasel at pci with weasel_pci 578file dev/pci/weasel_pci.c weasel 579 580# Game adapter (joystick) 581attach joy at pci with joy_pci 582file dev/pci/joy_pci.c joy_pci 583