1#	$NetBSD: files.isa,v 1.177 2021/04/26 19:10:38 thorpej Exp $
2#
3# Config file and device description for machine-independent ISA code.
4# Included by ports that need it.  Requires that the SCSI files be
5# defined first.
6
7# ports should specify appropriate major numbers for the following
8# devices:
9#	mcd, wd, wt
10
11device	isa {[port = -1], [size = 0],
12	     [iomem = -1], [iosiz = 0],
13	     [irq = -1], [drq = -1], [drq2 = -1]}
14attach	isa at isabus
15file	dev/isa/isa.c			isa			needs-flag
16file	dev/isa/isa_stub.c		isa
17
18file	dev/isa/isabusprint.c		isabus
19
20# ISA DMA controller
21define	isadma
22file	dev/isa/isadma.c		isadma			needs-flag
23
24#
25# 8250/16[45]50-based multi-port serial boards
26#
27
28define	commulti {[slave = -1]}
29file	dev/isa/commultiprint.c		commulti
30
31# AST 4-port board
32device	ast: commulti
33attach	ast at isa
34file	dev/isa/ast.c			ast
35
36# TC-800 8-port board
37device	tcom: commulti
38attach	tcom at isa
39file	dev/isa/tcom.c			tcom
40
41# BOCA 8-port board
42device	boca: commulti
43attach	boca at isa
44file	dev/isa/boca.c			boca
45
46# Addonics FlexPort multiport serial card
47device	addcom: commulti
48attach	addcom at isa with addcom_isa
49file	dev/isa/addcom_isa.c		addcom
50
51# IBM RT PC 4-port board
52device	rtfps: commulti
53attach	rtfps at isa
54file	dev/isa/rtfps.c			rtfps
55
56# BOCA 6-port board (3x 16552)
57device	ioat: commulti
58attach	ioat at isa
59file	dev/isa/ioat66.c		ioat
60
61# MOXA 8-port board
62device	moxa: commulti
63attach	moxa at isa with moxa_isa
64file	dev/isa/moxa_isa.c		moxa
65
66#
67# Serial and parallel drivers
68#
69
70attach	com at isa with com_isa
71file	dev/isa/com_isa.c		com_isa
72
73attach	com at commulti with com_multi
74file	dev/isa/com_multi.c		com_multi
75
76# Cyclades Cyclom-8/16/32
77attach	cy at isa with cy_isa
78file	dev/isa/cy_isa.c		cy_isa
79
80# PC-style parallel ports: ISA bus attachment (XXX what chip?)
81# XXX chip driver should be defined elsewhere
82attach	lpt at isa with lpt_isa
83file	dev/isa/lpt_isa.c		lpt_isa & !ppbus
84
85# Parallel port chipset
86attach	atppc at isa with atppc_isa: isadma
87file	dev/isa/atppc_isa.c		atppc_isa
88file	dev/isa/atppc_isadma.c		atppc_isa | atppc_acpi | atppc_pnpbios | atppc_ofisa | atppc_isapnp
89
90#
91# SCSI host adapters
92#
93
94# AdvanSys 514x family
95# device declaration in sys/conf/files
96attach	adv at isa with adv_isa: isadma
97file	dev/isa/adv_isa.c               adv_isa
98
99# Adaptec AHA-154x family
100# device declaration in sys/conf/files
101attach	aha at isa with aha_isa: isadma
102file	dev/isa/aha_isa.c		aha_isa
103
104# Adaptec AIC-6[32]60 ICs
105# device declaration in sys/conf/files
106attach	aic at isa with aic_isa: isadma
107file	dev/isa/aic_isa.c		aic_isa
108
109# Qlogic ESP406/FAS408 boards
110# device declaration in sys/conf/files
111attach	esp at isa with esp_isa: isadma
112file	dev/isa/esp_isa.c		esp_isa
113
114# BusLogic BT-[45]4x ISA family
115# device declaration in sys/conf/files
116attach	bha at isa with bha_isa: isadma
117file	dev/isa/bha_isa.c		bha_isa
118
119# DPT SmartCache/SmartRAID III/IV ISA family
120# device declaration in sys/conf/files
121attach	dpt at isa with dpt_isa: isadma
122file	dev/isa/dpt_isa.c		dpt_isa
123
124# Seagate ST0[12] ICs
125device	sea: scsi, isadma
126attach	sea at isa
127file	dev/isa/seagate.c		sea
128
129# UltraStor UHA-[13]4f boards
130# device declaration in sys/conf/files
131attach	uha at isa with uha_isa: isadma
132file	dev/isa/uha_isa.c		uha_isa
133
134# Western Digital WD7000 and Future Domain TMC-7000 boards
135device	wds: scsi, isadma
136attach	wds at isa
137file	dev/isa/wds.c			wds
138
139#
140# Other ISA disk controllers
141#
142
143# Mitsumi CD-ROM controllers
144device	mcd: disk
145attach	mcd at isa
146file	dev/isa/mcd.c			mcd			needs-flag
147defflag			MCD_PROMISC		# enable "promiscuous" match
148
149attach	wdc at isa with wdc_isa
150file	dev/isa/wdc_isa.c		wdc_isa
151
152# Wangtek- and Archive-compatible tape controller boards
153device	wt: tape, isadma
154attach	wt at isa
155file	dev/isa/wt.c			wt			needs-flag
156
157#
158# GPIB controllers
159#
160
161device	cec: gpibdev
162attach	cec at isa
163file	dev/isa/cec.c			cec
164
165#
166# ISA networking drivers
167#
168
169# WD/SMC 80x3 family, SMC Elite Ultra [8216], SMC EtherEZ
170# MUST be first: probe is non invasive, and registers are clobbered
171# by other drivers's probe
172# device declaration in sys/conf/files
173attach	we at isa with we_isa
174file	dev/isa/if_we_isa.c		we_isa
175
176# 3Com 3C503
177device	ec: ether, ifnet, arp, dp8390nic
178attach	ec at isa
179file	dev/isa/if_ec.c			ec
180
181# 3Com 3C505
182device	eg: ether, ifnet, arp
183attach	eg at isa
184file	dev/isa/if_eg.c			eg
185
186# 3Com 3C501
187device	el: ether, ifnet, arp
188attach	el at isa
189file	dev/isa/if_el.c			el
190
191# 3Com 3C509 Ethernet controller
192# device declaration in sys/conf/files
193attach	ep at isa with ep_isa: elink
194file	dev/isa/if_ep_isa.c		ep_isa
195
196# SDL Communications N2 PCI Network Interface
197# device in sys/conf/files
198attach	ntwoc at isa with ntwoc_isa
199file	dev/isa/if_ntwoc_isa.c          ntwoc_isa
200
201
202# Allied Telesis MB86965-based boards
203# (Allied Telesis AT1700/RE2000)
204# device in sys/conf/files
205attach	ate at isa with ate_isa
206file	dev/isa/if_ate.c		ate_isa
207
208# Crystal Semiconductor CS8900, CS8920, and CS8920M Ethernet
209define	cs_isa_common
210file	dev/isa/cs89x0isa.c		cs_isa_common
211attach	cs at isa with cs_isa: cs_isa_common, isadma
212file	dev/isa/if_cs_isa.c		cs_isa
213attach	tscs at isa with tscs_isa
214file	dev/isa/if_tscs_isa.c		tscs_isa
215
216# Fujitsu MB86960-based boards
217# (Fujitsu FMV-180 series)
218# device in sys/conf/files
219attach	fmv at isa with fmv_isa
220file	dev/isa/if_fmv_isa.c		fmv_isa
221
222# Intel i82595-based boards.
223# (Intel EtherExpress PRO)
224device	iy: ether, ifnet, arp
225attach	iy at isa
226file	dev/isa/if_iy.c			iy
227
228# the probe routine of this "recognizes" the iy. Probe after it.
229# NCR 5380-based boards
230attach	nca at isa with nca_isa
231file	dev/isa/nca_isa.c		nca_isa
232
233# AMD am7990 (Lance) -based boards
234# (BICC Isolan, NE2100, DEPCA)
235# device declaration in sys/conf/files
236device	nele {}
237attach	nele at isa
238attach	le at nele with le_nele: le24, isadma
239device	bicc {}
240attach	bicc at isa
241attach	le at bicc with le_bicc: le24, isadma
242file	dev/isa/if_le_isa.c		nele | bicc
243attach	depca at isa with depca_isa
244file	dev/isa/depca_isa.c		depca
245
246# DEC EtherWORKS III (LEMAC-based: DE203, DE204, DE205) cards
247attach	lc at isa with lc_isa
248file	dev/isa/if_lc_isa.c		lc_isa
249
250# Novell NE1000, NE2000, and clones
251attach	ne at isa with ne_isa: rtl80x9
252file	dev/isa/if_ne_isa.c		ne_isa
253
254# SMC91Cxx Ethernet Controllers
255attach	sm at isa with sm_isa
256file	dev/isa/if_sm_isa.c		sm_isa
257
258# 3Com 3C507
259device	ef: ether, ifnet, arp, elink, i82586
260attach	ef at isa
261file	dev/isa/if_ef.c			ef
262
263# AT&T StarLan boards
264device	ai: ether, ifnet, arp, i82586
265attach	ai at isa
266file	dev/isa/if_ai.c			ai
267
268# EtherExpress/16
269device	ix: ether, ifnet, arp, i82586
270attach	ix at isa
271file	dev/isa/if_ix.c			ix
272
273#
274# ISA Sound hardware
275#
276
277# MPU401 MIDI UART compatibles
278attach	mpu at isa with mpu_isa
279file	dev/isa/mpu_isa.c		mpu_isa
280
281# the SoundBlaster DSP, or close likenesses; used by other drivers
282define	sbdsp { }
283file	dev/isa/sbdsp.c			sbdsp
284
285# SoundBlaster family
286device	sb: audiobus, isadma, sbdsp, midibus
287file	dev/isa/sb.c			sb			needs-flag
288
289attach	sb at isa with sb_isa
290file	dev/isa/sb_isa.c		sb_isa			needs-flag
291
292attach	opl at sbdsp with opl_sb
293file	dev/isa/opl_sb.c		opl_sb
294
295attach	mpu at sbdsp with mpu_sb
296file	dev/isa/mpu_sb.c		mpu_sb
297
298# ProAudio Spectrum
299device	pas: audiobus, isadma, sbdsp
300attach	pas at isa
301file	dev/isa/pas.c			pas			needs-flag
302
303# AD1848 (CS4248, CS4231, AD1845) audio codec support; used by other drivers
304file	dev/isa/ad1848_isa.c		ad1848
305
306# ICS2101 mixer chip support; used by other drivers
307define	ics2101
308file	dev/isa/ics2101.c		ics2101
309
310# Microsoft Windows Sound System
311device	wss { } : audiobus, isadma, ad1848
312file	dev/isa/wss.c			wss			needs-flag
313
314attach	wss at isa with wss_isa
315file	dev/isa/wss_isa.c		wss_isa			needs-flag
316
317attach	opl at wss with opl_wss
318file	dev/isa/opl_wss.c		opl_wss
319
320# ESS Technology ES1887/ES888/ES1888
321device	ess { }: audiobus, isadma
322file	dev/isa/ess.c			ess			needs-flag
323
324attach	ess at isa with ess_isa
325file	dev/isa/ess_isa.c		ess_isa			needs-flag
326
327attach	opl at ess with opl_ess
328file	dev/isa/opl_ess.c		opl_ess
329
330attach	joy at ess with joy_ess
331file	dev/isa/joy_ess.c		joy_ess			needs-flag
332
333# Yamaha OPL2/OPL3 FM synth
334attach	opl at isa with opl_isa
335file	dev/isa/opl_isa.c		opl_isa
336
337# Yamaha OPL3-SA3
338device	ym { }: audiobus, isadma, ad1848
339file	dev/isa/ym.c			ym
340defparam opt_ym.h	YM_POWER_MODE YM_POWER_OFF_SEC
341
342attach	opl at ym with opl_ym
343file	dev/isa/opl_ym.c		opl_ym
344
345attach	mpu at ym with mpu_ym
346file	dev/isa/mpu_ym.c		mpu_ym			needs-flag
347
348# Gravis UltraSound & UltraSound MAX.
349# Use the "drq2" keyword in a config file to specify an extra DMA
350# channel for full-duplex operation.
351device	gus: audiobus, isadma, ics2101, ad1848
352attach	gus at isa
353file	dev/isa/gus.c			gus			needs-flag
354
355# Sierra's Aria chipset.
356# (e.g. Prometheus Aria 16)
357device	aria: audiobus
358attach	aria at isa
359file	dev/isa/aria.c			aria
360
361# Creative Music System (CMS)
362device	cms: midibus
363attach	cms at isa
364file	dev/isa/cms.c			cms
365
366# ISA PC keyboard controller
367defflag opt_pckbc.h			PCKBCNOTEST
368attach	pckbc at isa with pckbc_isa
369file	dev/isa/pckbc_isa.c		pckbc_isa
370
371# generic ISA VGA
372attach	vga at isa with vga_isa
373file	dev/isa/vga_isa.c		vga_isa			needs-flag
374
375# generic EGA
376device	ega: wsemuldisplaydev, pcdisplayops
377attach	ega at isa
378file	dev/isa/ega.c			ega			needs-flag
379
380# IDEC Supervision/16 image capture board
381device	isv
382attach	isv at isa with isv_isa
383file	dev/isa/isv.c			isv
384
385# generic PC graphics adapter (MGA, CGA, ...)
386device	pcdisplay: wsemuldisplaydev, pcdisplayops
387attach	pcdisplay at isa
388file	dev/isa/pcdisplay.c		pcdisplay		needs-flag
389
390# Middle Digital, Inc. PC-Weasel serial console board.
391# XXX This is a little gross... this is to conditionally compile
392# support for the PC-Weasel into the `pcdisplay' driver,
393# but we can't use an `option', because options can't have
394# attributes.
395defpseudo pcweasel: sysmon_wdog
396file	dev/isa/weasel_isa.c		pcweasel		needs-flag
397
398# Sound Forte RadioLink SF16-FMR2 FM Radio Card
399device sf2r: radiodev, tea5757
400attach sf2r at isa
401file	dev/isa/sf16fmr2.c		sf2r
402
403# Aztech/PackardBell FM Radio Card
404device az: radiodev, lm700x
405attach az at isa
406file	dev/isa/aztech.c		az
407
408# AIMS Lab Radiotrack & compatible
409device	rt: radiodev, lm700x
410attach	rt at isa
411file	dev/isa/radiotrack.c		rt
412
413# AIMS Lab Radiotrack II FM Radio Card
414device	rtii: radiodev, tea5757
415attach	rtii at isa
416file	dev/isa/radiotrack2.c		rtii
417
418# PC PPI (speaker interface)
419device	pcppi {}
420attach	pcppi at isa
421file	dev/isa/pcppi.c			pcppi			needs-flag
422
423attach	spkr at pcppi with spkr_pcppi
424file	dev/isa/spkr_pcppi.c		spkr_pcppi
425
426attach	midi at pcppi with midi_pcppi: midisyn
427file	dev/isa/midi_pcppi.c		midi_pcppi
428
429# AT Timer (TIMER 1)
430attach	attimer at isa with attimer_isa
431file	dev/isa/attimer_isa.c		attimer_isa
432
433#
434# Environmental monitors
435#
436
437# SMSC LPC47B397 Super I/O with hardware monitor
438device	smsc: sysmon_envsys
439attach	smsc at isa with smsc
440file	dev/isa/smsc.c			smsc			needs-flag
441
442# Winbond LPC Super I/O
443device	wbsio { }: gpiobus, sysmon_wdog
444attach	wbsio at isa
445file	dev/isa/wbsio.c			wbsio
446
447# LM78 temp/fanspeed monitor
448attach	lm at isa with lm_isa
449attach	lm at wbsio with lm_wbsio
450file	dev/isa/lm_isa_common.c		lm_isa | lm_wbsio
451file	dev/isa/lm_isa.c		lm_isa
452file	dev/isa/lm_wbsio.c		lm_wbsio
453
454# iTE Super I/O with hardware monitor
455device	itesio: sysmon_envsys, sysmon_wdog
456attach	itesio at isa with itesio
457file	dev/isa/itesio_isa.c		itesio
458
459# Fintek Super I/O with hardware monitor
460device	finsio: sysmon_envsys
461attach	finsio at isa with finsio
462file	dev/isa/finsio_isa.c 		finsio
463
464# Abit uGuru hardware monitor
465attach	ug at isa with ug_isa
466file	dev/isa/ug_isa.c		ug_isa
467
468# IBM ThinkPad Active Protection System
469device	aps: sysmon_envsys
470attach	aps at isa with aps
471file	dev/isa/aps.c 			aps
472
473# Game adapter (joystick)
474attach	joy at isa with joy_isa
475file	dev/isa/joy_isa.c		joy_isa
476
477# NSC PC87366 Super IO / monitor chip
478device nsclpcsio: sysmon_envsys, gpiobus
479attach nsclpcsio at isa with nsclpcsio_isa
480file dev/isa/nsclpcsio_isa.c nsclpcsio_isa
481
482# USB Controller
483attach	slhci at isa with slhci_isa
484file	dev/isa/slhci_isa.c		slhci_isa
485
486device	tsdio {}
487attach	tsdio at isa
488file	dev/isa/tsdio.c			tsdio
489
490# Trusted Platform Module
491attach tpm at isa with tpm_isa
492file   dev/isa/tpm_isa.c		tpm_isa	needs-flag
493
494# Soekris GPIO & LEDs driver
495device	soekrisgpio: gpiobus
496attach	soekrisgpio at isa
497file	dev/isa/soekrisgpio.c		soekrisgpio
498
499# NCT5104D GPIO
500device	nct: gpiobus
501attach	nct at isa
502file	dev/isa/nct.c			nct
503
504#
505# ISA Plug 'n Play autoconfiguration glue.
506# THIS MUST COME AFTER ALL MI ISA DEVICES ARE DEFINED.  This is because
507# ISA PnP devices often use `device' declarations listed in this file.
508#
509include	"dev/isapnp/files.isapnp"
510