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