files.alpha revision 1.116
1# $NetBSD: files.alpha,v 1.116 2000/06/06 03:10:55 thorpej Exp $
2#
3# alpha-specific configuration info
4
5# maxpartitions must be first item in files.${ARCH}.newconf
6maxpartitions 8
7
8maxusers 8 16 64
9
10# CPU support option headers
11defopt	DEC_2000_300	# "Jensen":	2000/300 (DECpc AXP 150)
12defopt	DEC_2100_A50	# Avanti etc:	AlphaStation 400, 200, etc.
13defopt	DEC_2100_A500	# Sable etc:	AlphaServer 2100
14defopt	DEC_3000_300	# Pelican etc:	3000/300*
15defopt	DEC_3000_500	# Flamingo etc:	3000/[4-9]00*
16defopt	DEC_550		# Miata:	Personal Workstation (550)
17defopt	DEC_AXPPCI_33	# NoName:	AXPpci33, etc.
18defopt	DEC_EB164	# EB164:	AlphaPC 164
19defopt	DEC_EB64PLUS	# EB64+:	AlphaPC 64, etc.
20defopt	DEC_KN20AA	# KN20AA:	AlphaStation 500 and 600
21defopt	DEC_KN8AE	# KN8AE:	AlphaServer 8200 and 8400
22defopt	DEC_KN300	# KN300:	AlphaServer 4X00
23defopt	AVALON_A12	# Avalon:	A12T1, A12M Parallel Supercomputer
24defopt	DEC_1000	# Mikasa etc:	AlphaServer 1000
25defopt	DEC_1000A	# Corelle etc:	AlphaServer 800 and 1000A
26defopt	DEC_ALPHABOOK1	# AlphaBook1:	Tadpole/DEC AlphaBook
27defopt	DEC_EB66	# EB66:		21066 Evaluation Board
28defopt	DEC_6600	# EV6		Various EV6 Systems
29defopt	API_UP1000	# EV6		Alpha Processor, Inc. UP1000
30
31# Miscellaneous CPU-specific option headers
32defopt	FIX_UNALIGNED_VAX_FP
33defopt	ZS_IOASIC_DMA
34
35# XXX Temporary, until integration is finished.
36defopt	NEW_SCC_DRIVER
37
38# realtime clock compatible to OSF/1
39defopt	CLOCK_COMPAT_OSF1
40
41# this loses, but there's no way to define attributes which have attributes
42define	alpha_shared_intr
43file	arch/alpha/common/shared_intr.c	alpha_shared_intr | dec_eb164 |
44					dec_eb64plus | dec_kn20aa | dec_kn8ae |
45					dec_kn300 | dec_550 | dec_1000 |
46					dec_1000a | dec_eb66 | dec_6600
47define	alpha_sgmap
48file	arch/alpha/common/sgmap_common.c alpha_sgmap | dec_3000_500
49
50#
51# Bus-independent devices
52#
53
54device	mainbus { }			# no locators (yet?)
55attach	mainbus at root
56
57device	cpu { }				# not really optional
58attach	cpu at mainbus
59file	arch/alpha/alpha/cpu.c		cpu
60
61#
62# Machine-independent MII/PHY drivers.
63#
64
65include "dev/mii/files.mii"
66
67#
68# Machine-independent SCSI drivers
69#
70
71include "dev/scsipi/files.scsipi"
72major { cd = 3 }
73major { sd = 8 }
74
75#
76# Machine-independent ATA drivers
77#
78
79include "dev/ata/files.ata"
80major { wd = 4 }
81
82# Memory Disk
83file	arch/alpha/alpha/md_root.c	memory_disk_hooks
84major { md = 6 }
85
86# RAIDframe 
87major { raid = 16 }
88
89# Raster operations
90include "dev/rasops/files.rasops"
91include "dev/wsfont/files.wsfont"
92
93#
94# "Workstation Console" glue.
95#
96include "dev/wscons/files.wscons"
97
98
99#
100# TurboLaser Bus Support
101#
102
103device	tlsb { node = -1, offset = -1 }
104attach	tlsb at mainbus
105file	arch/alpha/tlsb/tlsb.c		tlsb & dec_kn8ae
106
107device	kft { }
108attach	kft at tlsb
109file	arch/alpha/tlsb/kftxx.c		kft
110
111device	tlsbmem
112attach	tlsbmem at tlsb
113file	arch/alpha/tlsb/tlsbmem.c	tlsbmem
114
115device	gbus { offset = -1 }
116attach	gbus at tlsb
117file	arch/alpha/tlsb/gbus.c		gbus
118
119#
120# MCBUS support
121#
122
123device	mcbus { mid = -1 }
124attach	mcbus at mainbus
125file	arch/alpha/mcbus/mcbus.c	mcbus & dec_kn300
126
127device	mcmem
128attach	mcmem at mcbus
129file	arch/alpha/mcbus/mcmem.c	mcmem
130
131#
132# Bus-independent support for DEC devices
133#
134include "dev/dec/files.dec"
135
136#
137# TURBOchannel Devices
138#
139include "dev/tc/files.tc"
140
141# TC attachment is MD
142attach	tc at tcbus
143
144device	tcasic: tcbus
145attach	tcasic at mainbus
146file	arch/alpha/tc/tcasic.c		tcasic
147file	arch/alpha/tc/tc_bus_mem.c	tcasic
148file	arch/alpha/tc/tc_dma.c		tcasic
149file	arch/alpha/tc/tc_dma_3000_300.c	tcasic & dec_3000_300
150file	arch/alpha/tc/tc_dma_3000_500.c	tcasic & dec_3000_500
151file	arch/alpha/tc/tc_sgmap.c	tcasic & dec_3000_500
152file	arch/alpha/tc/tc_3000_500.c	tcasic & dec_3000_500
153file	arch/alpha/tc/tc_3000_300.c	tcasic & dec_3000_300
154
155# the TURBOchannel IOCTL ASIC
156#  IOASIC device and attachment defined in sys/dev/tc/files.tc
157file	arch/alpha/tc/ioasic.c		ioasic
158
159# Color Frame buffer
160device	cfb: wsemuldisplaydev, wsrasteremulops
161attach	cfb at tc
162file	arch/alpha/tc/cfb.c		cfb		needs-flag
163
164# Smart Frame buffer
165device	sfb: wsemuldisplaydev, rasops8
166attach	sfb at tc
167file	dev/tc/sfb.c			sfb		needs-flag
168
169# 8530 UARTs
170device	scc: tty
171attach	scc at ioasic
172file	arch/alpha/tc/scc.c		scc		needs-count
173
174# 8530 UARTs using the MI 8530 driver   
175device	zsc { channel = -1 }
176attach	zsc at ioasic with zsc_ioasic
177file	arch/alpha/tc/zs_ioasic.c	zsc_ioasic	needs-flag
178file	dev/ic/z8530sc.c		zsc
179
180device	zstty: tty
181attach	zstty at zsc
182file	dev/ic/z8530tty.c		zstty		needs-flag
183
184device	vsms: wsmousedev
185attach	vsms at zsc with zsms
186file	dev/dec/zsms.c			zsms
187
188device	lkkbd: wskbddev
189attach	lkkbd at zsc with zskbd
190file	dev/dec/zskbd.c			zskbd		needs-flag
191
192# the TCDS ASIC
193device	tcds { chip = -1 }
194attach	tcds at tc
195file	arch/alpha/tc/tcds.c		tcds
196
197# 53C[F]90 SCSI
198device	asc: scsi, ncr53c9x
199attach	asc at tcds with asc_tcds
200file	arch/alpha/tc/asc.c		asc
201file	arch/alpha/tc/tcds_dma.c	asc
202
203# TC and baseboard ioasic Lance ethernet are in files.tc
204
205#
206# ISA Bus support
207#
208
209include "dev/pci/files.pci"	# XXX some ISA devs are 'at pci' too.
210include "dev/isa/files.isa"
211
212#file	arch/alpha/isa/isafcns_jensen.c	dec_2000_300
213
214#
215# ISA Bus devices
216#
217
218#device	ibus at mainbus { }
219#device	jcombo at ibus: isabus
220#device	jeisa at ibus: eisabus
221
222file	arch/alpha/isa/isa_machdep.c	isa
223
224define	isadma_bounce
225file	arch/alpha/isa/isadma_bounce.c	isadma_bounce
226
227include "dev/pckbc/files.pckbc"
228
229# ISA speaker generates keyboard beep
230device isabeep
231attach isabeep at pcppi
232
233# Floppy disk controller
234device	fdc { drive = -1 }: isadma
235file	dev/isa/fd.c			fdc needs-flag
236
237attach	fdc at isa with fdc_isa
238file	dev/isa/fdc_isa.c		fdc_isa
239
240device	fd: disk
241attach	fd at fdc
242major	{ fd = 0 }
243
244# ISA Plug 'n Play devices
245file	arch/alpha/isa/isapnp_machdep.c	isapnp
246
247#
248# EISA Bus support
249#
250
251include "dev/eisa/files.eisa"
252
253
254#
255# PCI Bus support
256#
257
258# include "dev/pci/files.pci" XXX SEE ABOVE
259
260file	arch/alpha/pci/pciide_machdep.c		pciide
261
262define	alpha_pci_sgmap_pte32
263file	arch/alpha/pci/pci_sgmap_pte32.c	alpha_pci_sgmap_pte32
264
265define	alpha_pci_sgmap_pte64
266file	arch/alpha/pci/pci_sgmap_pte64.c	alpha_pci_sgmap_pte64
267
268device	apecs: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
269attach	apecs at mainbus
270file	arch/alpha/pci/apecs.c		apecs
271file	arch/alpha/pci/apecs_bus_io.c	apecs
272file	arch/alpha/pci/apecs_bus_mem.c	apecs
273file	arch/alpha/pci/apecs_dma.c	apecs
274file	arch/alpha/pci/apecs_pci.c	apecs
275
276device	cia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
277attach	cia at mainbus
278file	arch/alpha/pci/cia.c		cia
279file	arch/alpha/pci/cia_dma.c	cia
280file	arch/alpha/pci/cia_pci.c	cia
281file	arch/alpha/pci/cia_bwx_bus_io.c cia
282file	arch/alpha/pci/cia_bwx_bus_mem.c cia
283file	arch/alpha/pci/cia_swiz_bus_io.c cia
284file	arch/alpha/pci/cia_swiz_bus_mem.c cia
285
286device	a12c { }: pcibus
287attach	a12c at mainbus
288file	arch/alpha/pci/a12c.c		a12c
289file	arch/alpha/pci/a12c_bus_mem.c	a12c
290file	arch/alpha/pci/a12c_dma.c	a12c
291file	arch/alpha/pci/a12c_pci.c	a12c
292
293device	dwlpx: pcibus, alpha_sgmap, alpha_pci_sgmap_pte32
294attach	dwlpx at kft
295file	arch/alpha/pci/dwlpx.c		dwlpx
296file	arch/alpha/pci/dwlpx_bus_io.c	dwlpx
297file	arch/alpha/pci/dwlpx_bus_mem.c	dwlpx
298file	arch/alpha/pci/dwlpx_dma.c	dwlpx
299file	arch/alpha/pci/dwlpx_pci.c	dwlpx
300
301device	irongate: pcibus, isadma_bounce
302attach	irongate at mainbus
303file	arch/alpha/pci/irongate.c		irongate
304file	arch/alpha/pci/irongate_bus_io.c	irongate
305file	arch/alpha/pci/irongate_bus_mem.c	irongate
306file	arch/alpha/pci/irongate_dma.c		irongate
307file	arch/alpha/pci/irongate_pci.c		irongate
308
309device	lca: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
310attach	lca at mainbus
311file	arch/alpha/pci/lca.c		lca
312file	arch/alpha/pci/lca_bus_io.c	lca
313file	arch/alpha/pci/lca_bus_mem.c	lca
314file	arch/alpha/pci/lca_dma.c	lca
315file	arch/alpha/pci/lca_pci.c	lca
316
317device	mcpcia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
318attach	mcpcia at mcbus
319file	arch/alpha/pci/mcpcia.c		mcpcia
320file	arch/alpha/pci/mcpcia_bus_io.c	mcpcia
321file	arch/alpha/pci/mcpcia_bus_mem.c	mcpcia
322file	arch/alpha/pci/mcpcia_dma.c	mcpcia
323file	arch/alpha/pci/mcpcia_pci.c	mcpcia
324
325device	tsc { }
326attach	tsc at mainbus
327file	arch/alpha/pci/tsc.c		dec_6600
328
329device	tsp: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
330attach	tsp at tsc
331file	arch/alpha/pci/tsp_dma.c	tsp
332file	arch/alpha/pci/tsp_pci.c	tsp
333file	arch/alpha/pci/tsp_bus_io.c	tsp
334file	arch/alpha/pci/tsp_bus_mem.c	tsp
335
336device	ttwoga { hose = -1 }
337attach	ttwoga at mainbus
338device	ttwopci: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
339attach	ttwopci at ttwoga
340file	arch/alpha/pci/ttwoga.c		ttwoga
341file	arch/alpha/pci/ttwoga_bus_io.c	ttwoga
342file	arch/alpha/pci/ttwoga_bus_mem.c	ttwoga
343file	arch/alpha/pci/ttwoga_dma.c	ttwoga
344file	arch/alpha/pci/ttwoga_pci.c	ttwoga
345
346#
347# Sable STDIO support
348#
349device	sableio { port = -1 }
350attach	sableio at pcibus
351file	arch/alpha/sableio/sableio.c		sableio
352
353attach	com at sableio with com_sableio
354file	arch/alpha/sableio/com_sableio.c	com_sableio
355
356attach	lpt at sableio with lpt_sableio
357file	arch/alpha/sableio/lpt_sableio.c	lpt_sableio
358
359attach	pckbc at sableio with pckbc_sableio
360file	arch/alpha/sableio/pckbc_sableio.c	pckbc_sableio
361
362#attach	fdc at sableio with fdc_sableio
363#file	arch/alpha/sableio/fdc_sableio.c	fdc_sableio
364
365# CPU support files
366file	arch/alpha/pci/pci_2100_a50.c	dec_2100_a50
367file	arch/alpha/pci/pci_2100_a500.c	dec_2100_a500
368file	arch/alpha/pci/pci_up1000.c	api_up1000
369file	arch/alpha/pci/pci_a12.c	avalon_a12
370file	arch/alpha/pci/pci_alphabook1.c	dec_alphabook1
371file	arch/alpha/pci/pci_axppci_33.c	dec_axppci_33
372file	arch/alpha/pci/pci_eb164.c	dec_eb164
373file	arch/alpha/pci/pci_eb164_intr.s	dec_eb164
374file	arch/alpha/pci/pci_eb64plus.c	dec_eb64plus
375file	arch/alpha/pci/pci_eb64plus_intr.s dec_eb64plus
376file	arch/alpha/pci/pci_eb66.c	dec_eb66
377file	arch/alpha/pci/pci_eb66_intr.s	dec_eb66
378file	arch/alpha/pci/pci_kn20aa.c	dec_kn20aa
379file	arch/alpha/pci/pci_kn8ae.c	dec_kn8ae
380file	arch/alpha/pci/pci_kn300.c	dec_kn300
381file	arch/alpha/pci/pci_550.c	dec_550
382file	arch/alpha/pci/pci_1000a.c	dec_1000a
383file	arch/alpha/pci/pci_1000.c	dec_1000
384file	arch/alpha/pci/pci_6600.c	dec_6600
385
386
387#
388# PCI Bus devices
389#
390
391file	arch/alpha/pci/pci_machdep.c	pci
392
393device	sio: isabus, alpha_shared_intr, cy82c693
394attach	sio at pci
395device	pceb: isabus, eisabus, cy82c693
396attach	pceb at pci
397file	arch/alpha/pci/sio.c		sio | pceb	needs-flag
398file	arch/alpha/pci/sio_pic.c	sio | pceb
399
400
401#
402# A12 if_de hack
403#
404device	ade: ether, ifnet, arp
405attach	ade at pci
406file	arch/alpha/a12/if_ade.c		ade
407
408#
409# alpha/a12 platform-specific drivers
410#
411
412# Switch
413
414device	xb
415attach	xb at a12c
416file	arch/alpha/a12/if_xb.c	xb
417
418# Console
419
420device	a12dc
421attach	a12dc at a12c
422file	arch/alpha/a12/a12dc.c	a12dc		needs-flag
423
424#
425# Devices that can live on multiple busses
426#
427
428device	mcclock
429attach	mcclock at ioasic with mcclock_ioasic
430attach	mcclock at isa with mcclock_isa
431attach	mcclock at gbus with mcclock_tlsb
432file	arch/alpha/alpha/mcclock.c	mcclock
433file	arch/alpha/tc/mcclock_ioasic.c	mcclock_ioasic
434file	arch/alpha/isa/mcclock_isa.c	mcclock_isa
435file	arch/alpha/tlsb/mcclock_tlsb.c	mcclock_tlsb
436
437
438#
439# Standard files
440#
441file	arch/alpha/alpha/autoconf.c
442file	arch/alpha/alpha/clock.c
443file	dev/clock_subr.c
444file	arch/alpha/alpha/conf.c
445file	arch/alpha/alpha/cpuconf.c
446file	arch/alpha/alpha/interrupt.c
447file	arch/alpha/alpha/ipifuncs.c		multiprocessor
448file	arch/alpha/alpha/machdep.c
449file	arch/alpha/alpha/mainbus.c
450file	arch/alpha/alpha/mem.c
451file	arch/alpha/alpha/pmap.c
452file	arch/alpha/alpha/process_machdep.c
453file	arch/alpha/alpha/prom.c
454file	arch/alpha/alpha/support.c
455file	arch/alpha/alpha/sys_machdep.c
456file	arch/alpha/alpha/trap.c
457file	arch/alpha/alpha/vm_machdep.c
458file	arch/alpha/alpha/disksubr.c
459file	arch/alpha/common/bus_dma.c
460file	arch/alpha/common/comlogout.c
461file	dev/cons.c
462
463# Network protocol checksum routines
464file	arch/alpha/alpha/in_cksum.c		inet
465file	netinet/in4_cksum.c			inet
466file	netns/ns_cksum.c			ns
467
468# PROM console support (for ports that don't have native console support)
469file	arch/alpha/alpha/promcons.c
470
471# CPU support
472file	arch/alpha/alpha/dec_2100_a50.c		dec_2100_a50
473file	arch/alpha/alpha/dec_2100_a500.c	dec_2100_a500
474file	arch/alpha/alpha/dec_3000_300.c		dec_3000_300
475file	arch/alpha/alpha/dec_3000_500.c		dec_3000_500
476file	arch/alpha/alpha/dec_550.c		dec_550
477file	arch/alpha/alpha/dec_alphabook1.c	dec_alphabook1
478file	arch/alpha/alpha/dec_axppci_33.c	dec_axppci_33
479file	arch/alpha/alpha/dec_eb164.c		dec_eb164
480file	arch/alpha/alpha/dec_eb64plus.c		dec_eb64plus
481file	arch/alpha/alpha/dec_eb66.c		dec_eb66
482file	arch/alpha/alpha/dec_kn20aa.c		dec_kn20aa
483file	arch/alpha/alpha/dec_kn8ae.c		dec_kn8ae
484file	arch/alpha/alpha/dec_kn300.c		dec_kn300
485file	arch/alpha/alpha/api_up1000.c		api_up1000
486file	arch/alpha/alpha/avalon_a12.c		avalon_a12
487file	arch/alpha/alpha/dec_1000a.c		dec_1000 | dec_1000a
488file	arch/alpha/alpha/dec_6600.c		dec_6600
489
490# Kernel debugger support
491file	arch/alpha/alpha/db_disasm.c		ddb
492file	arch/alpha/alpha/db_interface.c		ddb
493file	arch/alpha/alpha/db_trace.c		ddb
494
495# Binary compatibility with previous NetBSD releases (COMPAT_XX)
496file	arch/alpha/alpha/compat_13_machdep.c	compat_13
497
498# OSF/1 Binary Compatibility (COMPAT_OSF1)
499include "compat/osf1/files.osf1"
500file	arch/alpha/alpha/osf1_locore.s		compat_osf1
501
502# Linux Binary Compatibility (COMPAT_LINUX)
503include "compat/linux/files.linux"
504include "compat/linux/arch/alpha/files.linux_alpha"
505
506# OSS audio driver compatibility
507include "compat/ossaudio/files.ossaudio"
508
509# XXXX pcic here because it needs to be late.  The catch: pcic needs
510# to be late, so devices which attach to it are attached late.  But it
511# needs to be before its isa and pci attachments.  This answer is
512# non-optimal, but I don't have a better answer right now.
513
514# PCIC pcmcia contoller
515# XXX this needs to be done very late, so it's done here.  This feels
516# like a kludge, but it might be for the best.
517
518defopt	PCIC_ISA_ALLOC_IOBASE
519defopt	PCIC_ISA_ALLOC_IOSIZE
520defopt	PCIC_ISA_INTR_ALLOC_MASK
521
522device	pcic: pcmciabus
523file	dev/ic/i82365.c			pcic
524
525# PCIC pcmcia controller on ISA bus.
526attach	pcic at isa with pcic_isa
527file	dev/isa/i82365_isa.c		pcic_isa
528
529# PCIC pcmcia controller on PCI bus.
530attach	pcic at pci with pcic_pci
531file	dev/pci/i82365_pci.c		pcic_pci
532
533# PCIC pcmcia controller on PnP board
534attach pcic at isapnp with pcic_isapnp
535file	dev/isapnp/i82365_isapnp.c	pcic_isapnp
536
537# Code common to ISA and ISAPnP attachments
538file	dev/isa/i82365_isasubr.c	pcic_isa | pcic_isapnp | pcic_pci
539
540
541# this wants to be probed as late as possible.
542#
543# Machine-independent PCMCIA drivers
544#
545include "dev/pcmcia/files.pcmcia"
546#
547# Machine-independent USB device support
548#
549include "dev/usb/files.usb"
550