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