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