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