1# $NetBSD: files.pci,v 1.138 2001/09/04 13:37:29 itohy 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 7defopt opt_pci.h PCIVERBOSE PCI_CONFIG_DUMP PCI_NETBSD_CONFIGURE 8 PCI_NETBSD_ENABLE_IDE 9 10defopt opt_bktr.h BKTR_OVERRIDE_CARD BKTR_OVERRIDE_TUNER BKTR_OVERRIDE_DBX 11 BKTR_OVERRIDE_MSP BKTR_SYSTEM_DEFAULT 12 BKTR_USE_PLL BKTR_GPIO_ACCESS BKTR_NO_MSP_RESET 13 BKTR_430_FX_MODE BKTR_SIS_VIA_MODE 14 15defopt 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/pciconf.c pci_netbsd_configure 25 26# Cypress 82c693 hyperCache(tm) Stand-Alone PCI Peripheral Controller 27# with USB. This is a combo chip: 28# 29# PCI-ISA bridge 30# PCI IDE controller 31# OHCI USB controller 32# 33# There are some common subroutines that each function needs. 34define cy82c693 35file dev/pci/cy82c693.c cy82c693 36 37# Adaptec 3940, 2940, and aic78[5678]0 SCSI controllers 38# device declaration in sys/conf/files 39attach ahc at pci with ahc_pci: ahc_seeprom, smc93cx6 40file dev/pci/ahc_pci.c ahc_pci 41 42# I2O adapters 43attach iop at pci with iop_pci 44file dev/pci/iop_pci.c iop_pci 45 46# 3ware RAID controllers 47device twe {unit = -1} 48attach twe at pci 49file dev/pci/twe.c twe 50 51attach ld at twe with ld_twe 52file dev/pci/ld_twe.c ld_twe 53 54# Compaq RAID controllers 55attach cac at pci with cac_pci 56file dev/pci/cac_pci.c cac_pci 57 58# Mylex DAC960 RAID controllers 59attach mlx at pci with mlx_pci 60file dev/pci/mlx_pci.c mlx_pci 61 62# Newer Mylex AcceleRAID and eXtremeRAID controllers 63device mly: scsi 64attach mly at pci 65file dev/pci/mly.c mly needs-flag 66 67# DPT EATA SCSI controllers 68attach dpt at pci with dpt_pci 69file dev/pci/dpt_pci.c dpt_pci 70 71# AdvanSys 1200A, 1200B, and ULTRA SCSI controllers 72# device declaration in sys/conf/files 73attach adv at pci with adv_pci 74file dev/pci/adv_pci.c adv_pci 75 76# AdvanSys ULTRA WIDE SCSI controllers 77# device declaration in sys/conf/files 78attach adw at pci with adw_pci 79file dev/pci/adw_pci.c adw_pci 80file dev/ic/adwlib.c adw_pci 81file dev/ic/adwmcode.c adw_pci 82 83# AMD Am53c974 PCscsi-PCI SCSI controllers 84device pcscp: scsi, ncr53c9x 85attach pcscp at pci 86file dev/pci/pcscp.c pcscp 87 88# BusLogic BT-9xx PCI family 89# device declaration in sys/conf/files 90attach bha at pci with bha_pci 91file dev/pci/bha_pci.c bha_pci 92 93# Qlogic ISP 10x0 (PCI) family 94# device declaration in sys/conf/files 95attach isp at pci with isp_pci 96file dev/pci/isp_pci.c isp_pci 97 98# Ethernet driver for DC21040-based boards 99device de: ether, ifnet, arp 100attach de at pci 101file dev/pci/if_de.c de 102 103# Efficient Networks, Inc. ATM interface 104# device declaration in sys/conf/files 105attach en at pci with en_pci 106file dev/pci/if_en_pci.c en_pci 107 108# 3Com 3c590 and 3c595 Ethernet controllers 109# device declaration in sys/conf/files 110attach ep at pci with ep_pci 111file dev/pci/if_ep_pci.c ep_pci 112 113# 3Com 3c90x[B] Ethernet controllers 114# device declaration in sys/conf/files 115attach ex at pci with ex_pci 116file dev/pci/if_ex_pci.c ex_pci 117 118# Digital DEFPA PCI FDDI Controller 119device fpa: pdq, fddi, ifnet, arp 120attach fpa at pci 121file dev/pci/if_fpa.c fpa 122 123# AMD am7990 (LANCE) -based Ethernet controllers 124# device declaration in sys/conf/files 125attach le at pci with le_pci: le32 126file dev/pci/if_le_pci.c le_pci 127 128# AMD PCnet-PCI Ethernet controller family 129# Supersedes if_le_pci.c 130device pcn: ether, ifnet, arp, mii 131attach pcn at pci 132file dev/pci/if_pcn.c pcn 133 134# common code for siop/esiop pci front end 135define siop_pci_common 136file dev/pci/siop_pci_common.c siop_pci_common 137 138# Symbios 53c8xx SCSI chips 139# device declaration in sys/conf/files 140attach siop at pci with siop_pci: siop_pci_common 141file dev/pci/siop_pci.c siop_pci 142 143# Initio INIC-940/950 SCSI controllers 144attach iha at pci with iha_pci 145file dev/pci/iha_pci.c iha_pci 146 147# PCI IDE controllers 148device pciide {[channel = -1]}: cy82c693, wdc_base, ata, atapi 149attach pciide at pci 150file dev/pci/pciide.c pciide 151 152# PCI-PCI bridge chips 153device ppb: pcibus 154attach ppb at pci 155file dev/pci/ppb.c ppb 156 157# Cyclades Cyclom-8/16/32 158attach cy at pci with cy_pci 159file dev/pci/cy_pci.c cy_pci 160 161# Cyclades-Z series of intelligent multi-port serial adapters 162device cz 163attach cz at pci 164file dev/pci/cz.c cz needs-flag 165 166# Intel EtherExpress PRO 10/100B 167attach fxp at pci with fxp_pci 168file dev/pci/if_fxp_pci.c fxp_pci 169 170# Sun HME-network 171attach hme at pci with hme_pci 172file dev/pci/if_hme_pci.c hme_pci 173 174# NE2000-compatible PCI Ethernet cards 175defparam opt_ipkdb.h IPKDB_NE_PCISLOT : IPKDB_NE_PCI 176defopt opt_ipkdb.h IPKDB_NE_PCI : IPKDB_NE IPKDB_NE_PCISLOT 177attach ne at pci with ne_pci: rtl80x9 178file dev/pci/if_ne_pci.c ne_pci | IPKDB_NE_PCI 179 180# Texas Instruments ThunderLAN Chip. 181device tl: ether, ifnet, arp, i2c, i2c_eeprom, mii, mii_bitbang 182attach tl at pci 183file dev/pci/if_tl.c tl 184 185# SDL Communications N2 PCI Network Interface 186# device declaration in sys/conf/files 187attach ntwoc at pci with ntwoc_pci 188file dev/pci/if_ntwoc_pci.c ntwoc_pci 189 190# Lan Media Corporation T1/HSSI/DS3 driver 191device lmc: ifnet, sppp 192attach lmc at pci 193file dev/pci/if_lmc.c lmc 194file dev/pci/if_lmc_common.c lmc 195file dev/pci/if_lmc_media.c lmc 196file dev/pci/if_lmc_nbsd.c lmc 197 198# Essential Communications HIPPI interface 199# device declaration in sys/conf/files 200attach esh at pci with esh_pci 201file dev/pci/if_esh_pci.c esh_pci 202 203# generic PCI VGA 204attach vga at pci with vga_pci 205file dev/pci/vga_pci.c vga_pci needs-flag 206 207# DEC TGA 208device tga: wsemuldisplaydev, rasops8, rasops32 209attach tga at pci 210file dev/pci/tga.c tga needs-flag 211file dev/pci/tga_conf.c tga 212file dev/ic/bt485.c tga 213file dev/ic/bt463.c tga 214 215# Brooktree Bt848 video capture 216device bktr: pcibus 217attach bktr at pci 218file dev/pci/bktr/bktr_audio.c bktr 219file dev/pci/bktr/bktr_card.c bktr 220file dev/pci/bktr/bktr_core.c bktr 221file dev/pci/bktr/bktr_os.c bktr needs-flag 222file dev/pci/bktr/bktr_tuner.c bktr 223 224# Cirrus Logic CrystalClear PCI Audio CS4280 225device clcs: audio, auconv, mulaw, ac97, midibus 226attach clcs at pci 227file dev/pci/cs4280.c clcs 228 229# Cirrus Logic CrystalClear PCI Audio CS4281 230device clct: audio, auconv, mulaw, ac97 231attach clct at pci 232file dev/pci/cs4281.c clct 233 234# Shared code for Cirrus Logic CrystalClear PCI Audio CS4280 and CS4281 235file dev/pci/cs428x.c clcs | clct 236 237# Forte Media FM801 238device fms { }: audio, auconv, mulaw, ac97, midibus 239attach fms at pci 240file dev/pci/fms.c fms 241 242attach opl at fms with opl_fms 243file dev/pci/opl_fms.c opl_fms 244 245attach mpu at fms with mpu_fms 246file dev/pci/mpu_fms.c mpu_fms 247 248# Ensoniq AudioPCI S5016 249device eap: audio, auconv, mulaw, ac97, midibus 250attach eap at pci 251file dev/pci/eap.c eap 252 253# Intel ICH AC'97 audio 254device auich: audio, auconv, mulaw, ac97 255attach auich at pci 256file dev/pci/auich.c auich 257 258# VIA VT82C686A AC'97 Audio 259device auvia: audio, auconv, mulaw, ac97 260attach auvia at pci 261file dev/pci/auvia.c auvia 262 263# NeoMagic 256 AC'97 Audio 264device neo: audio, auconv, mulaw, ac97 265attach neo at pci 266file dev/pci/neo.c neo 267 268# ESS Solo-1 PCI AudioDrive 269device eso { }: audio, auconv, mulaw, midibus 270attach eso at pci 271file dev/pci/eso.c eso 272 273attach opl at eso with opl_eso 274file dev/pci/opl_eso.c opl_eso 275 276attach mpu at eso with mpu_eso 277file dev/pci/mpu_eso.c mpu_eso 278 279# ESS Maestro-1/2/2e PCI AC97 Audio Accelerator 280device esm: audio, auconv, mulaw, ac97 281attach esm at pci 282file dev/pci/esm.c esm 283 284# S3 SonicVibes (S3 617) 285device sv { }: audio, auconv, mulaw, midibus 286attach sv at pci 287file dev/pci/sv.c sv 288 289attach opl at sv with opl_sv 290file dev/pci/opl_sv.c opl_sv 291 292# C-Media CMI8x38 Audio Chip 293device cmpci { }: audio, auconv, mulaw 294attach cmpci at pci 295file dev/pci/cmpci.c cmpci 296 297attach opl at cmpci with opl_cmpci 298file dev/pci/opl_cmpci.c opl_cmpci 299 300attach mpu at cmpci with mpu_cmpci 301file dev/pci/mpu_cmpci.c mpu_cmpci 302 303# Yamaha YMF724/740/744/754 PCI audio controller 304device yds { }: audio, auconv, mulaw, ac97 305attach yds at pci 306file dev/pci/yds.c yds 307 308attach opl at yds with opl_yds 309file dev/pci/opl_yds.c opl_yds 310 311attach mpu at yds with mpu_yds 312file dev/pci/mpu_yds.c mpu_yds 313 314# SMC EPIC/100 Fast Ethernet on PCI 315attach epic at pci with epic_pci 316file dev/pci/if_epic_pci.c epic_pci 317 318# PCI "universal" communication device driver, for PCI com, lpt, etc. ports 319# (see documentation in the driver for what, exactly, should be supported) 320device puc { port = -1 } 321attach puc at pci 322file dev/pci/puc.c puc 323file dev/pci/pucdata.c puc 324 325attach com at puc with com_puc 326file dev/pci/com_puc.c com_puc 327 328# Console device support for puc drivers 329defopt opt_puccn.h PUCCN 330file dev/pci/puccn.c puccn 331 332# XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT 333# XXX BECAUSE NOT 'lpt' IS DEFINED IN files.isa, RATHER THAN files. 334# XXX (when the conf/files and files.isa bogons are fixed, this can 335# XXX be fixed as well.) 336 337# attach lpt at puc with lpt_puc 338# file dev/pci/lpt_puc.c lpt_puc 339 340# UHCI USB controller 341attach uhci at pci with uhci_pci 342file dev/pci/uhci_pci.c uhci_pci 343 344# OHCI USB controller 345attach ohci at pci with ohci_pci 346file dev/pci/ohci_pci.c ohci_pci 347 348# EHCI USB controller 349attach ehci at pci with ehci_pci 350file dev/pci/ehci_pci.c ehci_pci 351 352# OHCI IEEE 1394 controller 353attach fwohci at pci with fwohci_pci 354file dev/pci/fwohci_pci.c fwohci_pci 355 356# IEEE 1394 TI "Lynx" controller 357attach fwlynx at pci with fwlynx_pci 358file dev/pci/fwlynx_pci.c fwlynx_pci 359 360# VIA Rhine/Rhine II Fast Ethernet controllers 361device vr: ether, ifnet, arp, mii, mii_bitbang 362attach vr at pci 363file dev/pci/if_vr.c vr 364 365# SiS 900 Fast Ethernet controllers 366device sip: ether, ifnet, arp, mii 367attach sip at pci 368file dev/pci/if_sip.c sip 369 370# National Semiconductor DP83820 Gigabit Ethernet 371device gsip: ether, ifnet, arp, mii, mii_bitbang 372attach gsip at pci 373file dev/pci/if_gsip.c gsip 374 375# Sundance Tech./Tamarack TC9021 Gigabit Ethernet 376device stge: ether, ifnet, arp, mii, mii_bitbang 377attach stge at pci 378file dev/pci/if_stge.c stge 379 380# Realtek 8129/8139 Ethernet controllers 381attach rtk at pci with rtk_pci 382file dev/pci/if_rtk_pci.c rtk_pci 383 384# DECchip 21x4x Ethernet controller family, and assorted clones. 385attach tlp at pci with tlp_pci 386defopt opt_tlp.h TLP_MATCH_21040 TLP_MATCH_21041 387 TLP_MATCH_21140 TLP_MATCH_21142 388 389file dev/pci/if_tlp_pci.c tlp_pci 390 391# Bit3 PCI-VME mod. 617 392device btvmei: vmebus 393attach btvmei at pci 394file dev/pci/btvmei.c btvmei 395#file dev/pci/btvmei_dma.c btvmei 396#file dev/pci/btvmei_cntlrdma.c btvmei 397 398# Alteon ACEnic Gigabit Ethernet controller 399device ti: ether, ifnet, arp 400attach ti at pci 401file dev/pci/if_ti.c ti 402 403# Adaptec AIC-6915 Ethernet interface 404attach sf at pci with sf_pci 405file dev/pci/if_sf_pci.c sf_pci 406 407# Sundance Tech. ST-201 10/100 Ethernet 408device ste: ether, ifnet, arp, mii, mii_bitbang 409attach ste at pci 410file dev/pci/if_ste.c ste 411 412# YENTA PCI-Cardbus bridge 413#device cbb: cbbus, pcmciabus 414device cbb: pcmciaslot 415attach cbb at pci with cbb_pci 416file dev/pci/pccbb.c cbb 417 418# Tundra Universe PCI-VME adapter 419define univ_pci 420file dev/pci/universe_pci.c univ_pci 421 422# Bit3 PCI-VME mod. 2706 423device btvmeii: vmebus, univ_pci 424attach btvmeii at pci 425file dev/pci/btvmeii.c btvmeii 426 427# VT86C686A power management 428device viapm {} 429attach viapm at pci 430file dev/pci/viapm.c viapm 431 432# hardware monitoring part of viapm 433device viaenv: sysmon_envsys 434attach viaenv at viapm 435file dev/pci/viaenv.c viaenv needs-flag 436 437# Hi/fn 7751 438device hifn {} 439attach hifn at pci 440file dev/pci/hifn7751.c hifn 441 442# Aironet PC4500/PC4800 443attach an at pci with an_pci 444file dev/pci/if_an_pci.c an_pci 445 446 447# ISDN devices 448attach isic at pci with isic_pci 449file dev/pci/isic_pci.c isic_pci 450 451defopt opt_isicpci.h ISICPCI_ELSA_QS1PCI ISICPCI_AVM_A1 452 453file dev/pci/isic_pci_elsa_qs1p.c isic_pci 454file dev/pci/isic_pci_avm_fritz_pci.c isic_pci 455 456