files.alpha revision 1.69
1# $NetBSD: files.alpha,v 1.69 1998/04/15 00:47:22 mjacob 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_3000_300	# Pelican etc:	3000/300*
14defopt	DEC_3000_500	# Flamingo etc:	3000/[4-9]00*
15defopt	DEC_550		# Miata:	Personal Workstation (550)
16defopt	DEC_AXPPCI_33	# NoName:	AXPpci33, etc.
17defopt	DEC_EB164	# EB164:	AlphaPC 164
18defopt	DEC_EB64PLUS	# EB64+:	AlphaPC 64, etc.
19defopt	DEC_KN20AA	# KN20AA:	AlphaStation 500 and 600
20defopt	DEC_KN8AE	# KN8AE:	AlphaServer 8200 and 8400
21defopt	DEC_KN300	# KN300:	AlphaServer 4X00
22defopt	AVALON_A12	# Avalon:	A12T1, A12M Parallel Supercomputer
23
24# Miscellaneous CPU-specific option headers
25defopt	FIX_UNALIGNED_VAX_FP
26defopt	ZS_IOASIC_DMA
27
28# XXX Temporary, until integration is finished.
29defopt	NEW_SCC_DRIVER
30
31# a wscons output device; used later, but needs to be near the top for
32# common file (e.g. vga) definitions.
33define	wsconsdev {[console = -1]}
34
35# this loses, but there's no way to define attributes which have attributes
36define	alpha_shared_intr
37file	arch/alpha/common/shared_intr.c	alpha_shared_intr | dec_eb164 |
38					dec_eb64plus | dec_kn20aa | dec_kn8ae |
39					dec_kn300
40define	alpha_sgmap
41file	arch/alpha/common/sgmap_common.c alpha_sgmap | dec_3000_500
42
43device	vga: wsconsdev
44file	arch/alpha/common/vga.c		vga
45
46#
47# Bus-independent devices
48#
49
50device	mainbus { }			# no locators (yet?)
51attach	mainbus at root
52
53device	cpu { }				# not really optional
54attach	cpu at mainbus
55file	arch/alpha/alpha/cpu.c		cpu
56
57
58#
59# Machine-independent SCSI drivers
60#
61
62include "dev/scsipi/files.scsipi"
63major { st = 2 }
64major { cd = 3 }
65major { sd = 8 }
66
67#
68# Machine-independent ATA drivers
69#
70
71include "dev/ata/files.ata"
72major { wd = 4 }
73
74# Memory Disk
75file	arch/alpha/alpha/md_root.c	memory_disk_hooks
76major { md = 6 }
77
78#
79# raster console routines
80#
81
82define	raster
83include "dev/rcons/files.rcons"
84file	arch/alpha/wscons/wscons_rinit.c	raster
85file	arch/alpha/wscons/wscons_rops.c		raster
86
87
88#
89# "Workstation Console" glue; attaches frame buffer to emulator & kbd.
90#
91device	wscons: tty
92attach	wscons at wsconsdev
93file	arch/alpha/wscons/wscons.c	wscons		needs-flag
94file	arch/alpha/wscons/wscons_emul.c	wscons
95
96file	arch/alpha/wscons/event.c	wscons
97file	arch/alpha/wscons/kbd.c		wscons
98file	arch/alpha/wscons/ms.c		wscons
99
100
101#
102# TurboLaser Bus Support
103#
104
105device	tlsb { node = -1, offset = -1 }
106attach	tlsb at mainbus
107file	arch/alpha/tlsb/tlsb.c		tlsb & dec_kn8ae
108
109device	kft { }
110attach	kft at tlsb
111file	arch/alpha/tlsb/kftxx.c		kft
112
113device	tlsbmem
114attach	tlsbmem at tlsb
115file	arch/alpha/tlsb/tlsbmem.c	tlsbmem
116
117device	gbus { offset = -1 }
118attach	gbus at tlsb
119file	arch/alpha/tlsb/gbus.c		gbus
120
121#
122# MCBUS support
123#
124
125device	mcbus { mid = -1 }
126attach	mcbus at mainbus
127file	arch/alpha/mcbus/mcbus.c	mcbus & dec_kn300
128
129device	mcmem
130attach	mcmem at mcbus
131file	arch/alpha/mcbus/mcmem.c	mcmem
132
133#
134# Bus-independent support for DEC devices
135#
136include "dev/dec/files.dec"
137
138#
139# TurboChannel Devices
140#
141include "dev/tc/files.tc"
142
143# TC attachment is MD
144attach	tc at tcbus
145
146device	tcasic: tcbus
147attach	tcasic at mainbus
148file	arch/alpha/tc/tcasic.c		tcasic
149file	arch/alpha/tc/tc_bus_mem.c	tcasic
150file	arch/alpha/tc/tc_dma.c		tcasic
151file	arch/alpha/tc/tc_dma_3000_300.c	tcasic & dec_3000_300
152file	arch/alpha/tc/tc_dma_3000_500.c	tcasic & dec_3000_500
153file	arch/alpha/tc/tc_sgmap.c	tcasic & dec_3000_500
154file	arch/alpha/tc/tc_3000_500.c	tcasic & dec_3000_500
155file	arch/alpha/tc/tc_3000_300.c	tcasic & dec_3000_300
156
157# the TurboChannel IOCTL ASIC
158#  IOASIC device and attachment defined in sys/dev/tc/files.tc
159file	arch/alpha/tc/ioasic.c		ioasic
160
161# Color Frame buffer
162device	cfb: raster, wsconsdev
163attach	cfb at tc
164file	arch/alpha/tc/cfb.c		cfb
165
166# Smart Frame buffer
167device	sfb: raster, wsconsdev
168attach	sfb at tc
169file	arch/alpha/tc/sfb.c		sfb
170
171# 8530 UARTs
172device	scc: tty
173attach	scc at ioasic
174file	arch/alpha/tc/scc.c		scc		needs-count
175
176# 8530 UARTs using the MI 8530 driver   
177device	zsc { channel = -1 }
178attach	zsc at ioasic with zsc_ioasic
179file	arch/alpha/tc/zs_ioasic.c	zsc_ioasic
180file	dev/ic/z8530sc.c		zsc
181
182device	zstty: tty
183attach	zstty at zsc
184file	dev/ic/z8530tty.c		zstty		needs-flag
185
186# the TCDS ASIC
187device	tcds { slot = -1 }
188attach	tcds at tc
189file	arch/alpha/tc/tcds.c		tcds		needs-count
190
191# 53C[F]90 SCSI
192device	asc: scsi, ncr53c9x
193attach	asc at tcds
194file	arch/alpha/tc/asc.c		asc		needs-count
195file	arch/alpha/tc/tcds_dma.c	asc
196
197# TC and baseboard ioasic Lance ethernet are in files.tc
198
199#
200# ISA Bus support
201#
202
203include "dev/pci/files.pci"	# XXX some ISA devs are 'at pci' too.
204include "dev/isa/files.isa"
205
206#file	arch/alpha/isa/isafcns_jensen.c	dec_2000_300
207
208
209#
210# ISA Bus devices
211#
212
213#device	ibus at mainbus { }
214#device	jcombo at ibus: isabus
215#device	jeisa at ibus: eisabus
216
217file	arch/alpha/isa/isa_machdep.c	isa
218
219device	pcppi { }
220attach	pcppi at isa
221file	arch/alpha/isa/pcppi.c		pcppi
222
223device	pckbd
224attach	pckbd at pcppi
225file	arch/alpha/isa/pckbd.c		pckbd
226
227device	pms
228attach	pms at pcppi
229file	arch/alpha/isa/pms.c		pms
230
231attach	vga at isa with vga_isa
232file	arch/alpha/isa/vga_isa.c	vga_isa		needs-flag
233
234# Floppy disk controller
235device	fdc { drive = -1 }
236attach	fdc at isa
237device	fd: disk, isadma
238attach	fd at fdc
239file	arch/alpha/isa/fd.c		fdc needs-flag
240major	{ fd = 0 }
241
242# PC speaker
243#
244# EISA Bus support
245#
246
247include "dev/eisa/files.eisa"
248
249
250#
251# PCI Bus support
252#
253
254# include "dev/pci/files.pci" XXX SEE ABOVE
255
256define	alpha_pci_sgmap_pte32
257file	arch/alpha/pci/pci_sgmap_pte32.c	alpha_pci_sgmap_pte32
258
259define	alpha_pci_sgmap_pte64
260file	arch/alpha/pci/pci_sgmap_pte64.c	alpha_pci_sgmap_pte64
261
262device	apecs: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
263attach	apecs at mainbus
264file	arch/alpha/pci/apecs.c		apecs
265file	arch/alpha/pci/apecs_bus_io.c	apecs
266file	arch/alpha/pci/apecs_bus_mem.c	apecs
267file	arch/alpha/pci/apecs_dma.c	apecs
268file	arch/alpha/pci/apecs_pci.c	apecs
269
270device	cia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
271attach	cia at mainbus
272file	arch/alpha/pci/cia.c		cia
273file	arch/alpha/pci/cia_dma.c	cia
274file	arch/alpha/pci/cia_pci.c	cia
275file	arch/alpha/pci/cia_swiz_bus_io.c cia
276file	arch/alpha/pci/cia_swiz_bus_mem.c cia
277
278device	a12c { }: pcibus
279attach	a12c at mainbus
280file	arch/alpha/pci/a12c.c		a12c
281file	arch/alpha/pci/a12c_bus_mem.c	a12c
282file	arch/alpha/pci/a12c_dma.c	a12c
283file	arch/alpha/pci/a12c_pci.c	a12c
284
285device	dwlpx: pcibus, alpha_sgmap, alpha_pci_sgmap_pte32
286attach	dwlpx at kft
287file	arch/alpha/pci/dwlpx.c		dwlpx
288file	arch/alpha/pci/dwlpx_bus_io.c	dwlpx
289file	arch/alpha/pci/dwlpx_bus_mem.c	dwlpx
290file	arch/alpha/pci/dwlpx_dma.c	dwlpx
291file	arch/alpha/pci/dwlpx_pci.c	dwlpx
292
293device	lca: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
294attach	lca at mainbus
295file	arch/alpha/pci/lca.c		lca
296file	arch/alpha/pci/lca_bus_io.c	lca
297file	arch/alpha/pci/lca_bus_mem.c	lca
298file	arch/alpha/pci/lca_dma.c	lca
299file	arch/alpha/pci/lca_pci.c	lca
300
301device	mcpcia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
302attach	mcpcia at mcbus
303file	arch/alpha/pci/mcpcia.c		mcpcia
304file	arch/alpha/pci/mcpcia_bus_io.c	mcpcia
305file	arch/alpha/pci/mcpcia_bus_mem.c	mcpcia
306file	arch/alpha/pci/mcpcia_dma.c	mcpcia
307file	arch/alpha/pci/mcpcia_pci.c	mcpcia
308
309
310# CPU support files
311file	arch/alpha/pci/pci_2100_a50.c	dec_2100_a50
312file	arch/alpha/pci/pci_a12.c	avalon_a12
313file	arch/alpha/pci/pci_axppci_33.c	dec_axppci_33
314file	arch/alpha/pci/pci_eb164.c	dec_eb164
315file	arch/alpha/pci/pci_eb164_intr.s	dec_eb164
316#file	arch/alpha/pci/pci_eb64plus.c	dec_eb64plus
317file	arch/alpha/pci/pci_eb64plus_intr.s dec_eb64plus
318file	arch/alpha/pci/pci_kn20aa.c	dec_kn20aa
319file	arch/alpha/pci/pci_kn8ae.c	dec_kn8ae
320file	arch/alpha/pci/pci_kn300.c	dec_kn300
321
322
323#
324# PCI Bus devices
325#
326
327file	arch/alpha/pci/pci_machdep.c	pci
328
329device	sio: isabus, alpha_shared_intr
330attach	sio at pci
331device	pceb: isabus, eisabus
332attach	pceb at pci
333file	arch/alpha/pci/sio.c		sio | pceb	needs-flag
334file	arch/alpha/pci/sio_pic.c	sio | pceb
335
336device	tga: raster, wsconsdev
337attach	tga at pci
338file	arch/alpha/pci/tga.c		tga		needs-flag
339file	arch/alpha/pci/tga_conf.c	tga
340file	arch/alpha/pci/tga_bt463.c	tga
341file	arch/alpha/pci/tga_bt485.c	tga
342
343attach	vga at pci with vga_pci
344file	arch/alpha/pci/vga_pci.c	vga_pci		needs-flag
345
346#
347# A12 if_de hack, this is temporary!
348#
349device	ade: ether, ifnet, arp
350attach	ade at pci
351file	arch/alpha/pci/if_ade.c		ade
352
353#
354# alpha/a12 platform-specific drivers
355#
356
357# Switch
358
359device	xb
360attach	xb at a12c
361file	arch/alpha/a12/if_xb.c	xb
362
363# Console
364
365device	a12dc
366attach	a12dc at a12c
367file	arch/alpha/a12/a12dc.c	a12dc		needs-flag
368
369#
370# Devices that can live on multiple busses
371#
372
373device	mcclock
374attach	mcclock at ioasic with mcclock_ioasic
375attach	mcclock at isa with mcclock_isa
376attach	mcclock at gbus with mcclock_tlsb
377file	arch/alpha/alpha/mcclock.c	mcclock
378file	arch/alpha/tc/mcclock_ioasic.c	mcclock_ioasic
379file	arch/alpha/isa/mcclock_isa.c	mcclock_isa
380file	arch/alpha/tlsb/mcclock_tlsb.c	mcclock_tlsb
381
382
383#
384# Standard files
385#
386file	arch/alpha/alpha/autoconf.c
387file	arch/alpha/alpha/clock.c
388file	arch/alpha/alpha/conf.c
389file	arch/alpha/alpha/cpuconf.c
390file	arch/alpha/alpha/interrupt.c
391file	arch/alpha/alpha/machdep.c
392file	arch/alpha/alpha/mainbus.c
393file	arch/alpha/alpha/mem.c
394file	arch/alpha/alpha/pmap.c
395file	arch/alpha/alpha/process_machdep.c
396file	arch/alpha/alpha/prom.c
397file	arch/alpha/alpha/support.c
398file	arch/alpha/alpha/sys_machdep.c
399file	arch/alpha/alpha/trap.c
400file	arch/alpha/alpha/vm_machdep.c
401file	arch/alpha/alpha/disksubr.c
402file	arch/alpha/common/bus_dma.c
403file	dev/cons.c
404
405# Network protocol checksum routines
406file	arch/alpha/alpha/in_cksum.c		inet
407file	netns/ns_cksum.c			ns
408
409# PROM console support (for ports that don't have native console support)
410file	arch/alpha/alpha/promcons.c
411
412# CPU support
413file	arch/alpha/alpha/dec_2100_a50.c		dec_2100_a50
414file	arch/alpha/alpha/dec_3000_300.c		dec_3000_300
415file	arch/alpha/alpha/dec_3000_500.c		dec_3000_500
416file	arch/alpha/alpha/dec_550.c		dec_550
417file	arch/alpha/alpha/dec_axppci_33.c	dec_axppci_33
418file	arch/alpha/alpha/dec_eb164.c		dec_eb164
419file	arch/alpha/alpha/dec_eb64plus.c		dec_eb64plus
420file	arch/alpha/alpha/dec_kn20aa.c		dec_kn20aa
421file	arch/alpha/alpha/dec_kn8ae.c		dec_kn8ae
422file	arch/alpha/alpha/dec_kn300.c		dec_kn300
423file	arch/alpha/alpha/avalon_a12.c		avalon_a12
424
425# Kernel debugger support
426file	arch/alpha/alpha/db_disasm.c		ddb
427file	arch/alpha/alpha/db_interface.c		ddb
428file	arch/alpha/alpha/db_trace.c		ddb
429
430# OSF/1 Binary Compatibility (COMPAT_OSF1)
431include "compat/osf1/files.osf1"
432