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