xref: /netbsd-src/sys/arch/alpha/conf/files.alpha (revision 6a493d6bc668897c91594964a732d38505b70cbb)
1# $NetBSD: files.alpha,v 1.185 2012/10/02 23:54:51 christos 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
11defflag		DEC_2000_300	# "Jensen":	2000/300 (DECpc AXP 150)
12defflag		DEC_2100_A50	# Avanti etc:	AlphaStation 400, 200, etc.
13defflag		DEC_2100_A500	# Sable etc:	AlphaServer 2100
14defflag		DEC_2100A_A500	# Lynx etc:	AlphaServer 2100A
15defflag		DEC_3000_300	# Pelican etc:	3000/300*
16defflag		DEC_3000_500	# Flamingo etc:	3000/[4-9]00*
17defflag		DEC_550		# Miata:	Personal Workstation (550)
18defflag		DEC_AXPPCI_33	# NoName:	AXPpci33, etc.
19defflag		DEC_EB164	# EB164:	AlphaPC 164
20defflag		DEC_EB64PLUS	# EB64+:	AlphaPC 64, etc.
21defflag		DEC_KN20AA	# KN20AA:	AlphaStation 500 and 600
22defflag		DEC_KN8AE	# KN8AE:	AlphaServer 8200 and 8400
23defflag		DEC_KN300	# KN300:	AlphaServer 4X00
24defflag		DEC_1000	# Mikasa etc:	AlphaServer 1000
25defflag		DEC_1000A	# Corelle etc:	AlphaServer 800 and 1000A
26defflag		DEC_ALPHABOOK1	# AlphaBook1:	Tadpole/DEC AlphaBook
27defflag		DEC_EB66	# EB66:		21066 Evaluation Board
28defflag		DEC_6600	# EV6		Various EV6 Systems
29defflag		API_UP1000	# EV6		Alpha Processor, Inc. UP1000
30
31# Miscellaneous CPU-specific option headers
32defflag		FIX_UNALIGNED_VAX_FP
33defflag		ZS_IOASIC_DMA
34
35# realtime clock compatible to OSF/1
36defflag		CLOCK_COMPAT_OSF1
37
38# this loses, but there's no way to define attributes which have attributes
39define	alpha_shared_intr
40file	arch/alpha/common/shared_intr.c	alpha_shared_intr | dec_eb164 |
41					dec_eb64plus | dec_kn20aa | dec_kn8ae |
42					dec_kn300 | dec_550 | dec_1000 |
43					dec_1000a | dec_eb66 | dec_6600
44define	alpha_sgmap
45file	arch/alpha/common/sgmap_common.c alpha_sgmap | dec_3000_500
46
47#
48# Bus-independent devices
49#
50
51device	mainbus { }			# no locators (yet?)
52attach	mainbus at root
53
54device	cpu { }				# not really optional
55attach	cpu at mainbus
56file	arch/alpha/alpha/cpu.c		cpu
57
58#
59# Machine-independent I2O drivers.
60#
61
62include "dev/i2o/files.i2o"
63
64#
65# Machine-independent SCSI drivers
66#
67
68include "dev/scsipi/files.scsipi"
69
70#
71# Machine-independent ATA drivers
72#
73
74include "dev/ata/files.ata"
75
76# Memory Disk
77file	dev/md_root.c			memory_disk_hooks
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# TC and baseboard ioasic Lance ethernet are in files.tc
140
141#
142# ISA Bus support
143#
144
145include "dev/pci/files.pci"	# XXX some ISA devs are 'at pci' too.
146include "dev/pci/files.agp"
147include "dev/isa/files.isa"
148
149#
150# ISA Bus devices
151#
152
153file	arch/alpha/isa/isa_machdep.c	isa
154
155define	isadma_bounce
156file	arch/alpha/isa/isadma_bounce.c	isadma_bounce
157
158include "dev/pckbport/files.pckbport"
159
160# ISA speaker generates keyboard beep
161device isabeep
162attach isabeep at pcppi
163
164# Floppy disk controller
165device	fdc { drive = -1 }: isadma
166file	dev/isa/fd.c			fdc needs-flag
167
168attach	fdc at isa with fdc_isa
169file	dev/isa/fdc_isa.c		fdc_isa
170
171device	fd: disk
172attach	fd at fdc
173
174# ISA Plug 'n Play devices
175file	arch/alpha/isa/isapnp_machdep.c	isapnp
176
177#
178# EISA Bus support
179#
180
181include "dev/eisa/files.eisa"
182
183file	arch/alpha/eisa/eisa_machdep.c	eisa
184
185device	jensenio {[port = -1]}: eisabus, isabus, isadma_bounce
186attach	jensenio at mainbus
187file	arch/alpha/jensenio/jensenio.c		 jensenio
188file	arch/alpha/jensenio/jensenio_bus_intio.c jensenio
189file	arch/alpha/jensenio/jensenio_bus_io.c	 jensenio
190file	arch/alpha/jensenio/jensenio_bus_mem.c	 jensenio
191file	arch/alpha/jensenio/jensenio_dma.c	 jensenio
192file	arch/alpha/jensenio/jensenio_intr.c	 jensenio
193
194attach	com at jensenio with com_jensenio
195file	arch/alpha/jensenio/com_jensenio.c	com_jensenio
196
197attach	lpt at jensenio with lpt_jensenio
198file	arch/alpha/jensenio/lpt_jensenio.c	lpt_jensenio
199
200attach	pckbc at jensenio with pckbc_jensenio
201file	arch/alpha/jensenio/pckbc_jensenio.c	pckbc_jensenio
202
203#
204# PCI Bus support
205#
206
207# include "dev/pci/files.pci" XXX SEE ABOVE
208
209file	arch/alpha/pci/pciide_machdep.c		pciide_common
210
211define	alpha_pci_sgmap_pte32
212file	arch/alpha/pci/pci_sgmap_pte32.c	alpha_pci_sgmap_pte32
213
214define	alpha_pci_sgmap_pte64
215file	arch/alpha/pci/pci_sgmap_pte64.c	alpha_pci_sgmap_pte64
216
217device	apecs: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
218attach	apecs at mainbus
219file	arch/alpha/pci/apecs.c		apecs
220file	arch/alpha/pci/apecs_bus_io.c	apecs
221file	arch/alpha/pci/apecs_bus_mem.c	apecs
222file	arch/alpha/pci/apecs_dma.c	apecs
223file	arch/alpha/pci/apecs_pci.c	apecs
224
225device	cia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
226attach	cia at mainbus
227file	arch/alpha/pci/cia.c		cia
228file	arch/alpha/pci/cia_dma.c	cia
229file	arch/alpha/pci/cia_pci.c	cia
230file	arch/alpha/pci/cia_bwx_bus_io.c cia
231file	arch/alpha/pci/cia_bwx_bus_mem.c cia
232file	arch/alpha/pci/cia_swiz_bus_io.c cia
233file	arch/alpha/pci/cia_swiz_bus_mem.c cia
234
235device	dwlpx: pcibus, alpha_sgmap, alpha_pci_sgmap_pte32
236attach	dwlpx at kft
237file	arch/alpha/pci/dwlpx.c		dwlpx
238file	arch/alpha/pci/dwlpx_bus_io.c	dwlpx
239file	arch/alpha/pci/dwlpx_bus_mem.c	dwlpx
240file	arch/alpha/pci/dwlpx_dma.c	dwlpx
241file	arch/alpha/pci/dwlpx_pci.c	dwlpx
242
243device	irongate: pcibus, agpbus, agp_amd, isadma_bounce
244attach	irongate at mainbus
245file	arch/alpha/pci/irongate.c		irongate
246file	arch/alpha/pci/irongate_bus_io.c	irongate
247file	arch/alpha/pci/irongate_bus_mem.c	irongate
248file	arch/alpha/pci/irongate_dma.c		irongate
249file	arch/alpha/pci/irongate_pci.c		irongate
250
251device	lca: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
252attach	lca at mainbus
253file	arch/alpha/pci/lca.c		lca
254file	arch/alpha/pci/lca_bus_io.c	lca
255file	arch/alpha/pci/lca_bus_mem.c	lca
256file	arch/alpha/pci/lca_dma.c	lca
257file	arch/alpha/pci/lca_pci.c	lca
258
259device	mcpcia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
260attach	mcpcia at mcbus
261file	arch/alpha/pci/mcpcia.c		mcpcia
262file	arch/alpha/pci/mcpcia_bus_io.c	mcpcia
263file	arch/alpha/pci/mcpcia_bus_mem.c	mcpcia
264file	arch/alpha/pci/mcpcia_dma.c	mcpcia
265file	arch/alpha/pci/mcpcia_pci.c	mcpcia
266
267device	tsc { }
268attach	tsc at mainbus
269file	arch/alpha/pci/tsc.c		dec_6600
270
271device	tsp: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
272attach	tsp at tsc
273file	arch/alpha/pci/tsp_dma.c	tsp
274file	arch/alpha/pci/tsp_pci.c	tsp
275file	arch/alpha/pci/tsp_bus_io.c	tsp
276file	arch/alpha/pci/tsp_bus_mem.c	tsp
277
278device	ttwoga { hose = -1 }
279attach	ttwoga at mainbus
280# identical to pcibus
281define	sableiobus {[bus = -1]}
282device	ttwopci: pcibus, sableiobus, alpha_sgmap, alpha_pci_sgmap_pte64
283attach	ttwopci at ttwoga
284file	arch/alpha/pci/ttwoga.c		ttwoga
285file	arch/alpha/pci/ttwoga_bus_io.c	ttwoga
286file	arch/alpha/pci/ttwoga_bus_mem.c	ttwoga
287file	arch/alpha/pci/ttwoga_dma.c	ttwoga
288file	arch/alpha/pci/ttwoga_pci.c	ttwoga
289
290#
291# Sable STDIO support
292#
293device	sableio { port = -1 }
294attach	sableio at sableiobus
295file	arch/alpha/sableio/sableio.c		sableio
296
297attach	com at sableio with com_sableio
298file	arch/alpha/sableio/com_sableio.c	com_sableio
299
300attach	lpt at sableio with lpt_sableio
301file	arch/alpha/sableio/lpt_sableio.c	lpt_sableio
302
303attach	pckbc at sableio with pckbc_sableio
304file	arch/alpha/sableio/pckbc_sableio.c	pckbc_sableio
305
306attach	fdc at sableio with fdc_sableio
307file	arch/alpha/sableio/fdc_sableio.c	fdc_sableio
308
309# CPU support files
310file	arch/alpha/alpha/dec_2000_300.c	dec_2000_300
311file	arch/alpha/pci/pci_2100_a50.c	dec_2100_a50
312file	arch/alpha/pci/pci_2100_a500.c	dec_2100_a500 | dec_2100a_a500
313file	arch/alpha/pci/pci_up1000.c	api_up1000
314file	arch/alpha/pci/pci_alphabook1.c	dec_alphabook1
315file	arch/alpha/pci/pci_axppci_33.c	dec_axppci_33
316file	arch/alpha/pci/pci_eb164.c	dec_eb164
317file	arch/alpha/pci/pci_eb164_intr.s	dec_eb164
318file	arch/alpha/pci/pci_eb64plus.c	dec_eb64plus
319file	arch/alpha/pci/pci_eb64plus_intr.s dec_eb64plus
320file	arch/alpha/pci/pci_eb66.c	dec_eb66
321file	arch/alpha/pci/pci_eb66_intr.s	dec_eb66
322file	arch/alpha/pci/pci_kn20aa.c	dec_kn20aa
323file	arch/alpha/pci/pci_kn8ae.c	dec_kn8ae
324file	arch/alpha/pci/pci_kn300.c	dec_kn300
325file	arch/alpha/pci/pci_550.c	dec_550
326file	arch/alpha/pci/pci_1000a.c	dec_1000a
327file	arch/alpha/pci/pci_1000.c	dec_1000
328file	arch/alpha/pci/pci_6600.c	dec_6600
329
330
331#
332# PCI Bus devices
333#
334
335file	arch/alpha/pci/pci_machdep.c	pci
336file	arch/alpha/pci/agp_machdep.c	agp
337
338device	sio: isabus, alpha_shared_intr, cy82c693
339attach	sio at pci
340device	pceb: isabus, eisabus, cy82c693, alpha_shared_intr
341attach	pceb at pci
342file	arch/alpha/pci/sio.c		sio | pceb	needs-flag
343file	arch/alpha/pci/sio_pic.c	sio | pceb
344
345#
346# Devices that can live on multiple busses
347#
348
349device	mcclock: mc146818
350attach	mcclock at ioasic with mcclock_ioasic
351attach	mcclock at isa with mcclock_isa
352attach	mcclock at gbus with mcclock_tlsb
353attach	mcclock at jensenio with mcclock_jensenio
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
358file	arch/alpha/jensenio/mcclock_jensenio.c	mcclock_jensenio
359
360
361#
362# Standard files
363#
364file	arch/alpha/alpha/autoconf.c
365file	arch/alpha/alpha/clock.c
366file	arch/alpha/alpha/core_machdep.c		coredump
367file	arch/alpha/alpha/cpuconf.c
368file	arch/alpha/alpha/interrupt.c
369file	arch/alpha/alpha/ipifuncs.c		multiprocessor
370file	arch/alpha/alpha/kobj_machdep.c		modular
371file	arch/alpha/alpha/machdep.c
372file	arch/alpha/alpha/mainbus.c
373file	arch/alpha/alpha/patch.c
374file	arch/alpha/alpha/pmap.c
375file	arch/alpha/alpha/process_machdep.c
376file	arch/alpha/alpha/procfs_machdep.c	procfs
377file	arch/alpha/alpha/prom.c
378file	arch/alpha/alpha/sys_machdep.c
379file	arch/alpha/alpha/syscall.c
380file	arch/alpha/alpha/trap.c
381file	arch/alpha/alpha/fp_complete.c
382file	arch/alpha/alpha/vm_machdep.c
383file	arch/alpha/alpha/disksubr.c
384file	arch/alpha/common/bus_dma.c
385file	arch/alpha/common/comlogout.c
386file	dev/cons.c
387file	kern/kern_cctr.c
388
389file	dev/bus_dma/bus_dmamem_common.c
390
391# PROM console support (for ports that don't have native console support)
392file	arch/alpha/alpha/promcons.c
393
394# CPU support
395file	arch/alpha/alpha/dec_2100_a50.c		dec_2100_a50
396file	arch/alpha/alpha/dec_2100_a500.c	dec_2100_a500 | dec_2100a_a500
397file	arch/alpha/alpha/dec_3000_300.c		dec_3000_300
398file	arch/alpha/alpha/dec_3000_500.c		dec_3000_500
399file	arch/alpha/alpha/dec_550.c		dec_550
400file	arch/alpha/alpha/dec_alphabook1.c	dec_alphabook1
401file	arch/alpha/alpha/dec_axppci_33.c	dec_axppci_33
402file	arch/alpha/alpha/dec_eb164.c		dec_eb164
403file	arch/alpha/alpha/dec_eb64plus.c		dec_eb64plus
404file	arch/alpha/alpha/dec_eb66.c		dec_eb66
405file	arch/alpha/alpha/dec_kn20aa.c		dec_kn20aa
406file	arch/alpha/alpha/dec_kn8ae.c		dec_kn8ae
407file	arch/alpha/alpha/dec_kn300.c		dec_kn300
408file	arch/alpha/alpha/api_up1000.c		api_up1000
409file	arch/alpha/alpha/dec_1000a.c		dec_1000 | dec_1000a
410file	arch/alpha/alpha/dec_6600.c		dec_6600
411
412# Kernel debugger support
413file	arch/alpha/alpha/db_disasm.c		ddb
414file	arch/alpha/alpha/db_interface.c		ddb
415file	arch/alpha/alpha/db_trace.c		ddb
416
417file	arch/alpha/alpha/kgdb_machdep.c		kgdb
418
419# Binary compatibility with previous NetBSD releases (COMPAT_XX)
420file	arch/alpha/alpha/compat_13_machdep.c	compat_13 | compat_osf1
421file	arch/alpha/alpha/compat_16_machdep.c	compat_16 | compat_osf1
422
423# OSF/1 Binary Compatibility (COMPAT_OSF1)
424include "compat/osf1/files.osf1"
425file	arch/alpha/alpha/osf1_sigcode.s		compat_osf1
426file	arch/alpha/alpha/osf1_syscall.c		compat_osf1
427
428# Linux Binary Compatibility (COMPAT_LINUX)
429include "compat/linux/files.linux"
430include "compat/linux/arch/alpha/files.linux_alpha"
431file	arch/alpha/alpha/linux_sigcode.s	compat_linux
432file	arch/alpha/alpha/linux_syscall.c	compat_linux
433file	arch/alpha/alpha/linux_trap.c		compat_linux
434
435# Lock stubs
436file	arch/alpha/alpha/lock_stubs.s
437
438# OSS audio driver compatibility
439include "compat/ossaudio/files.ossaudio"
440
441# XXXX pcic here because it needs to be late.  The catch: pcic needs
442# to be late, so devices which attach to it are attached late.  But it
443# needs to be before its isa and pci attachments.  This answer is
444# non-optimal, but I don't have a better answer right now.
445
446# PCIC pcmcia contoller
447# XXX this needs to be done very late, so it's done here.  This feels
448# like a kludge, but it might be for the best.
449
450defparam	PCIC_ISA_ALLOC_IOBASE
451defparam	PCIC_ISA_ALLOC_IOSIZE
452defparam	PCIC_ISA_INTR_ALLOC_MASK
453
454device	pcic: pcmciabus
455file	dev/ic/i82365.c			pcic
456
457# PCIC pcmcia controller on ISA bus.
458attach	pcic at isa with pcic_isa
459file	dev/isa/i82365_isa.c		pcic_isa
460
461# PCIC pcmcia controller on PCI bus.
462attach	pcic at pci with pcic_pci
463file	dev/pci/i82365_pci.c		pcic_pci
464
465# PCIC pcmcia controller on PnP board
466attach pcic at isapnp with pcic_isapnp
467file	dev/isapnp/i82365_isapnp.c	pcic_isapnp
468
469# Code common to ISA and ISAPnP attachments
470file	dev/isa/i82365_isasubr.c	pcic_isa | pcic_isapnp | pcic_pci
471
472
473# this wants to be probed as late as possible.
474#
475# Machine-independent PCMCIA drivers
476#
477include "dev/pcmcia/files.pcmcia"
478#
479# Machine-independent USB device support
480#
481include "dev/usb/files.usb"
482#
483# Machine-independent Bluetooth support
484#
485include "dev/bluetooth/files.bluetooth"
486#
487# Machine-independent IEEE 1394 device support
488#
489include "dev/ieee1394/files.ieee1394"
490
491include	"arch/alpha/conf/majors.alpha"
492