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