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