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