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