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