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