xref: /netbsd-src/sys/arch/alpha/conf/files.alpha (revision 3cec974c61d7fac0a37c0377723a33214a458c8b)
1# $NetBSD: files.alpha,v 1.134 2001/03/04 13:36:19 ad 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_2100_A500	# Sable etc:	AlphaServer 2100
14defopt	DEC_2100A_A500	# Lynx etc:	AlphaServer 2100A
15defopt	DEC_3000_300	# Pelican etc:	3000/300*
16defopt	DEC_3000_500	# Flamingo etc:	3000/[4-9]00*
17defopt	DEC_550		# Miata:	Personal Workstation (550)
18defopt	DEC_AXPPCI_33	# NoName:	AXPpci33, etc.
19defopt	DEC_EB164	# EB164:	AlphaPC 164
20defopt	DEC_EB64PLUS	# EB64+:	AlphaPC 64, etc.
21defopt	DEC_KN20AA	# KN20AA:	AlphaStation 500 and 600
22defopt	DEC_KN8AE	# KN8AE:	AlphaServer 8200 and 8400
23defopt	DEC_KN300	# KN300:	AlphaServer 4X00
24defopt	AVALON_A12	# Avalon:	A12T1, A12M Parallel Supercomputer
25defopt	DEC_1000	# Mikasa etc:	AlphaServer 1000
26defopt	DEC_1000A	# Corelle etc:	AlphaServer 800 and 1000A
27defopt	DEC_ALPHABOOK1	# AlphaBook1:	Tadpole/DEC AlphaBook
28defopt	DEC_EB66	# EB66:		21066 Evaluation Board
29defopt	DEC_6600	# EV6		Various EV6 Systems
30defopt	API_UP1000	# EV6		Alpha Processor, Inc. UP1000
31
32# Miscellaneous CPU-specific option headers
33defopt	FIX_UNALIGNED_VAX_FP
34defopt	ZS_IOASIC_DMA
35
36# XXX Temporary, until integration is finished.
37defopt	NEW_SCC_DRIVER
38
39# realtime clock compatible to OSF/1
40defopt	CLOCK_COMPAT_OSF1
41
42# this loses, but there's no way to define attributes which have attributes
43define	alpha_shared_intr
44file	arch/alpha/common/shared_intr.c	alpha_shared_intr | dec_eb164 |
45					dec_eb64plus | dec_kn20aa | dec_kn8ae |
46					dec_kn300 | dec_550 | dec_1000 |
47					dec_1000a | dec_eb66 | dec_6600
48define	alpha_sgmap
49file	arch/alpha/common/sgmap_common.c alpha_sgmap | dec_3000_500
50
51#
52# Bus-independent devices
53#
54
55device	mainbus { }			# no locators (yet?)
56attach	mainbus at root
57
58device	cpu { }				# not really optional
59attach	cpu at mainbus
60file	arch/alpha/alpha/cpu.c		cpu
61
62#
63# Machine-independent MII/PHY drivers.
64#
65
66include "dev/mii/files.mii"
67
68#
69# Machine-independent I2O drivers.
70#
71
72include "dev/i2o/files.i2o"
73
74#
75# Machine-independent SCSI drivers
76#
77
78include "dev/scsipi/files.scsipi"
79major { cd = 3 }
80major { sd = 8 }
81
82#
83# Machine-independent ATA drivers
84#
85
86include "dev/ata/files.ata"
87major { wd = 4 }
88
89# Memory Disk
90file	arch/alpha/alpha/md_root.c	memory_disk_hooks
91major { md = 6 }
92
93# RAIDframe
94major { raid = 16 }
95
96# Logical disks
97major { ld = 17 }
98
99# Raster operations
100include "dev/rasops/files.rasops"
101include "dev/wsfont/files.wsfont"
102
103#
104# "Workstation Console" glue.
105#
106include "dev/wscons/files.wscons"
107
108
109#
110# TurboLaser Bus Support
111#
112
113device	tlsb { node = -1, offset = -1 }
114attach	tlsb at mainbus
115file	arch/alpha/tlsb/tlsb.c		tlsb & dec_kn8ae
116
117device	kft { }
118attach	kft at tlsb
119file	arch/alpha/tlsb/kftxx.c		kft
120
121device	tlsbmem
122attach	tlsbmem at tlsb
123file	arch/alpha/tlsb/tlsbmem.c	tlsbmem
124
125device	gbus { offset = -1 }
126attach	gbus at tlsb
127file	arch/alpha/tlsb/gbus.c		gbus
128
129#
130# MCBUS support
131#
132
133device	mcbus { mid = -1 }
134attach	mcbus at mainbus
135file	arch/alpha/mcbus/mcbus.c	mcbus & dec_kn300
136
137device	mcmem
138attach	mcmem at mcbus
139file	arch/alpha/mcbus/mcmem.c	mcmem
140
141#
142# Bus-independent support for DEC devices
143#
144include "dev/dec/files.dec"
145
146#
147# TURBOchannel Devices
148#
149include "dev/tc/files.tc"
150
151# TC attachment is MD
152attach	tc at tcbus
153
154device	tcasic: tcbus
155attach	tcasic at mainbus
156file	arch/alpha/tc/tcasic.c		tcasic
157file	arch/alpha/tc/tc_bus_mem.c	tcasic
158file	arch/alpha/tc/tc_dma.c		tcasic
159file	arch/alpha/tc/tc_dma_3000_300.c	tcasic & dec_3000_300
160file	arch/alpha/tc/tc_dma_3000_500.c	tcasic & dec_3000_500
161file	arch/alpha/tc/tc_sgmap.c	tcasic & dec_3000_500
162file	arch/alpha/tc/tc_3000_500.c	tcasic & dec_3000_500
163file	arch/alpha/tc/tc_3000_300.c	tcasic & dec_3000_300
164
165# the TURBOchannel IOCTL ASIC
166#  IOASIC device and attachment defined in sys/dev/tc/files.tc
167file	arch/alpha/tc/ioasic.c		ioasic
168
169# PMAG-B CX
170device	cfb: wsemuldisplaydev, wsrasteremulops
171attach	cfb at tc
172file	arch/alpha/tc/cfb.c		cfb		needs-flag
173
174# PMAGB-B HX or CXT
175device	sfb: wsemuldisplaydev, rasops8
176attach	sfb at tc
177file	dev/tc/sfb.c			sfb		needs-flag
178
179# PMAGD HX+
180device	sfbp: wsemuldisplaydev, rasops32
181attach	sfbp at tc
182file	dev/tc/sfbplus.c		sfbp		needs-flag
183
184# XXX: STIC (stamp interface chip) for PX and PXG
185define	stic
186file	dev/tc/stic.c			stic
187
188# XXX: PX PMAG-C
189device	px: wsemuldisplaydev, stic
190attach	px at tc
191file	dev/tc/px.c			px needs-flag
192
193# XXX: PXG PMAG-D, PMAG-E, PMAG-F
194device	pxg: wsemuldisplaydev, stic
195attach	pxg at tc
196file	dev/tc/pxg.c			pxg needs-flag
197
198# 8530 UARTs
199device	scc: tty
200attach	scc at ioasic
201file	arch/alpha/tc/scc.c		scc		needs-count
202
203# 8530 UARTs using the MI 8530 driver
204device	zsc { channel = -1 }
205attach	zsc at ioasic with zsc_ioasic
206file	dev/tc/zs_ioasic.c		zsc_ioasic	needs-flag
207file	dev/ic/z8530sc.c		zsc
208
209device	zstty: tty
210attach	zstty at zsc
211file	dev/ic/z8530tty.c		zstty		needs-flag
212
213device	vsms: wsmousedev
214attach	vsms at zsc with zsms
215file	dev/tc/zsms.c			zsms
216
217device	lkkbd: wskbddev
218attach	lkkbd at zsc with zskbd
219file	dev/tc/zskbd.c			zskbd		needs-flag
220
221# 53C[F]90 SCSI
222device	asc: scsi, ncr53c9x
223attach	asc at tcds with asc_tcds
224file	dev/tc/asc_tcds.c		asc_tcds
225
226# TC and baseboard ioasic Lance ethernet are in files.tc
227
228#
229# ISA Bus support
230#
231
232include "dev/pci/files.pci"	# XXX some ISA devs are 'at pci' too.
233include "dev/isa/files.isa"
234
235#
236# ISA Bus devices
237#
238
239file	arch/alpha/isa/isa_machdep.c	isa
240
241define	isadma_bounce
242file	arch/alpha/isa/isadma_bounce.c	isadma_bounce
243
244include "dev/pckbc/files.pckbc"
245
246# ISA speaker generates keyboard beep
247device isabeep
248attach isabeep at pcppi
249
250# Floppy disk controller
251device	fdc { drive = -1 }: isadma
252file	dev/isa/fd.c			fdc needs-flag
253
254attach	fdc at isa with fdc_isa
255file	dev/isa/fdc_isa.c		fdc_isa
256
257device	fd: disk
258attach	fd at fdc
259major	{ fd = 0 }
260
261# ISA Plug 'n Play devices
262file	arch/alpha/isa/isapnp_machdep.c	isapnp
263
264#
265# EISA Bus support
266#
267
268include "dev/eisa/files.eisa"
269
270file	arch/alpha/eisa/eisa_machdep.c	eisa
271
272device	jensenio {[port = -1]}: eisabus, isabus, isadma_bounce
273attach	jensenio at mainbus
274file	arch/alpha/jensenio/jensenio.c		 jensenio
275file	arch/alpha/jensenio/jensenio_bus_intio.c jensenio
276file	arch/alpha/jensenio/jensenio_bus_io.c	 jensenio
277file	arch/alpha/jensenio/jensenio_bus_mem.c	 jensenio
278file	arch/alpha/jensenio/jensenio_dma.c	 jensenio
279file	arch/alpha/jensenio/jensenio_intr.c	 jensenio
280
281attach	com at jensenio with com_jensenio
282file	arch/alpha/jensenio/com_jensenio.c	com_jensenio
283
284attach	lpt at jensenio with lpt_jensenio
285file	arch/alpha/jensenio/lpt_jensenio.c	lpt_jensenio
286
287attach	pckbc at jensenio with pckbc_jensenio
288file	arch/alpha/jensenio/pckbc_jensenio.c	pckbc_jensenio
289
290#
291# PCI Bus support
292#
293
294# include "dev/pci/files.pci" XXX SEE ABOVE
295
296file	arch/alpha/pci/pciide_machdep.c		pciide
297
298define	alpha_pci_sgmap_pte32
299file	arch/alpha/pci/pci_sgmap_pte32.c	alpha_pci_sgmap_pte32
300
301define	alpha_pci_sgmap_pte64
302file	arch/alpha/pci/pci_sgmap_pte64.c	alpha_pci_sgmap_pte64
303
304device	apecs: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
305attach	apecs at mainbus
306file	arch/alpha/pci/apecs.c		apecs
307file	arch/alpha/pci/apecs_bus_io.c	apecs
308file	arch/alpha/pci/apecs_bus_mem.c	apecs
309file	arch/alpha/pci/apecs_dma.c	apecs
310file	arch/alpha/pci/apecs_pci.c	apecs
311
312device	cia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
313attach	cia at mainbus
314file	arch/alpha/pci/cia.c		cia
315file	arch/alpha/pci/cia_dma.c	cia
316file	arch/alpha/pci/cia_pci.c	cia
317file	arch/alpha/pci/cia_bwx_bus_io.c cia
318file	arch/alpha/pci/cia_bwx_bus_mem.c cia
319file	arch/alpha/pci/cia_swiz_bus_io.c cia
320file	arch/alpha/pci/cia_swiz_bus_mem.c cia
321
322device	a12c { }: pcibus
323attach	a12c at mainbus
324file	arch/alpha/pci/a12c.c		a12c
325file	arch/alpha/pci/a12c_bus_mem.c	a12c
326file	arch/alpha/pci/a12c_dma.c	a12c
327file	arch/alpha/pci/a12c_pci.c	a12c
328
329device	dwlpx: pcibus, alpha_sgmap, alpha_pci_sgmap_pte32
330attach	dwlpx at kft
331file	arch/alpha/pci/dwlpx.c		dwlpx
332file	arch/alpha/pci/dwlpx_bus_io.c	dwlpx
333file	arch/alpha/pci/dwlpx_bus_mem.c	dwlpx
334file	arch/alpha/pci/dwlpx_dma.c	dwlpx
335file	arch/alpha/pci/dwlpx_pci.c	dwlpx
336
337device	irongate: pcibus, isadma_bounce
338attach	irongate at mainbus
339file	arch/alpha/pci/irongate.c		irongate
340file	arch/alpha/pci/irongate_bus_io.c	irongate
341file	arch/alpha/pci/irongate_bus_mem.c	irongate
342file	arch/alpha/pci/irongate_dma.c		irongate
343file	arch/alpha/pci/irongate_pci.c		irongate
344
345device	lca: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
346attach	lca at mainbus
347file	arch/alpha/pci/lca.c		lca
348file	arch/alpha/pci/lca_bus_io.c	lca
349file	arch/alpha/pci/lca_bus_mem.c	lca
350file	arch/alpha/pci/lca_dma.c	lca
351file	arch/alpha/pci/lca_pci.c	lca
352
353device	mcpcia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
354attach	mcpcia at mcbus
355file	arch/alpha/pci/mcpcia.c		mcpcia
356file	arch/alpha/pci/mcpcia_bus_io.c	mcpcia
357file	arch/alpha/pci/mcpcia_bus_mem.c	mcpcia
358file	arch/alpha/pci/mcpcia_dma.c	mcpcia
359file	arch/alpha/pci/mcpcia_pci.c	mcpcia
360
361device	tsc { }
362attach	tsc at mainbus
363file	arch/alpha/pci/tsc.c		dec_6600
364
365device	tsp: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
366attach	tsp at tsc
367file	arch/alpha/pci/tsp_dma.c	tsp
368file	arch/alpha/pci/tsp_pci.c	tsp
369file	arch/alpha/pci/tsp_bus_io.c	tsp
370file	arch/alpha/pci/tsp_bus_mem.c	tsp
371
372device	ttwoga { hose = -1 }
373attach	ttwoga at mainbus
374device	ttwopci: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64
375attach	ttwopci at ttwoga
376file	arch/alpha/pci/ttwoga.c		ttwoga
377file	arch/alpha/pci/ttwoga_bus_io.c	ttwoga
378file	arch/alpha/pci/ttwoga_bus_mem.c	ttwoga
379file	arch/alpha/pci/ttwoga_dma.c	ttwoga
380file	arch/alpha/pci/ttwoga_pci.c	ttwoga
381
382#
383# Sable STDIO support
384#
385device	sableio { port = -1 }
386attach	sableio at pcibus
387file	arch/alpha/sableio/sableio.c		sableio
388
389attach	com at sableio with com_sableio
390file	arch/alpha/sableio/com_sableio.c	com_sableio
391
392attach	lpt at sableio with lpt_sableio
393file	arch/alpha/sableio/lpt_sableio.c	lpt_sableio
394
395attach	pckbc at sableio with pckbc_sableio
396file	arch/alpha/sableio/pckbc_sableio.c	pckbc_sableio
397
398attach	fdc at sableio with fdc_sableio
399file	arch/alpha/sableio/fdc_sableio.c	fdc_sableio
400
401# CPU support files
402file	arch/alpha/alpha/dec_2000_300.c	dec_2000_300
403file	arch/alpha/pci/pci_2100_a50.c	dec_2100_a50
404file	arch/alpha/pci/pci_2100_a500.c	dec_2100_a500 | dec_2100a_a500
405file	arch/alpha/pci/pci_up1000.c	api_up1000
406file	arch/alpha/pci/pci_a12.c	avalon_a12
407file	arch/alpha/pci/pci_alphabook1.c	dec_alphabook1
408file	arch/alpha/pci/pci_axppci_33.c	dec_axppci_33
409file	arch/alpha/pci/pci_eb164.c	dec_eb164
410file	arch/alpha/pci/pci_eb164_intr.s	dec_eb164
411file	arch/alpha/pci/pci_eb64plus.c	dec_eb64plus
412file	arch/alpha/pci/pci_eb64plus_intr.s dec_eb64plus
413file	arch/alpha/pci/pci_eb66.c	dec_eb66
414file	arch/alpha/pci/pci_eb66_intr.s	dec_eb66
415file	arch/alpha/pci/pci_kn20aa.c	dec_kn20aa
416file	arch/alpha/pci/pci_kn8ae.c	dec_kn8ae
417file	arch/alpha/pci/pci_kn300.c	dec_kn300
418file	arch/alpha/pci/pci_550.c	dec_550
419file	arch/alpha/pci/pci_1000a.c	dec_1000a
420file	arch/alpha/pci/pci_1000.c	dec_1000
421file	arch/alpha/pci/pci_6600.c	dec_6600
422
423
424#
425# PCI Bus devices
426#
427
428file	arch/alpha/pci/pci_machdep.c	pci
429
430device	sio: isabus, alpha_shared_intr, cy82c693
431attach	sio at pci
432device	pceb: isabus, eisabus, cy82c693
433attach	pceb at pci
434file	arch/alpha/pci/sio.c		sio | pceb	needs-flag
435file	arch/alpha/pci/sio_pic.c	sio | pceb
436
437
438#
439# A12 if_de hack
440#
441device	ade: ether, ifnet, arp
442attach	ade at pci
443file	arch/alpha/a12/if_ade.c		ade
444
445#
446# alpha/a12 platform-specific drivers
447#
448
449# Switch
450
451device	xb
452attach	xb at a12c
453file	arch/alpha/a12/if_xb.c	xb
454
455# Console
456
457device	a12dc
458attach	a12dc at a12c
459file	arch/alpha/a12/a12dc.c	a12dc		needs-flag
460
461#
462# Devices that can live on multiple busses
463#
464
465device	mcclock
466attach	mcclock at ioasic with mcclock_ioasic
467attach	mcclock at isa with mcclock_isa
468attach	mcclock at gbus with mcclock_tlsb
469attach	mcclock at jensenio with mcclock_jensenio
470file	arch/alpha/alpha/mcclock.c	mcclock
471file	arch/alpha/tc/mcclock_ioasic.c	mcclock_ioasic
472file	arch/alpha/isa/mcclock_isa.c	mcclock_isa
473file	arch/alpha/tlsb/mcclock_tlsb.c	mcclock_tlsb
474file	arch/alpha/jensenio/mcclock_jensenio.c	mcclock_jensenio
475
476
477#
478# Standard files
479#
480file	arch/alpha/alpha/autoconf.c
481file	arch/alpha/alpha/clock.c
482file	dev/clock_subr.c
483file	arch/alpha/alpha/conf.c
484file	arch/alpha/alpha/cpuconf.c
485file	arch/alpha/alpha/interrupt.c
486file	arch/alpha/alpha/ipifuncs.c		multiprocessor
487file	arch/alpha/alpha/machdep.c
488file	arch/alpha/alpha/mainbus.c
489file	arch/alpha/alpha/mem.c
490file	arch/alpha/alpha/pmap.c
491file	arch/alpha/alpha/process_machdep.c
492file	arch/alpha/alpha/procfs_machdep.c	procfs
493file	arch/alpha/alpha/prom.c
494file	arch/alpha/alpha/support.c
495file	arch/alpha/alpha/sys_machdep.c
496file	arch/alpha/alpha/syscall.c
497file	arch/alpha/alpha/trap.c
498file	arch/alpha/alpha/vm_machdep.c
499file	arch/alpha/alpha/disksubr.c
500file	arch/alpha/common/bus_dma.c
501file	arch/alpha/common/comlogout.c
502file	dev/cons.c
503
504# Network protocol checksum routines
505file	arch/alpha/alpha/in_cksum.c		inet
506file	netinet/in4_cksum.c			inet
507file	netns/ns_cksum.c			ns
508
509# PROM console support (for ports that don't have native console support)
510file	arch/alpha/alpha/promcons.c
511
512# CPU support
513file	arch/alpha/alpha/dec_2100_a50.c		dec_2100_a50
514file	arch/alpha/alpha/dec_2100_a500.c	dec_2100_a500 | dec_2100a_a500
515file	arch/alpha/alpha/dec_3000_300.c		dec_3000_300
516file	arch/alpha/alpha/dec_3000_500.c		dec_3000_500
517file	arch/alpha/alpha/dec_550.c		dec_550
518file	arch/alpha/alpha/dec_alphabook1.c	dec_alphabook1
519file	arch/alpha/alpha/dec_axppci_33.c	dec_axppci_33
520file	arch/alpha/alpha/dec_eb164.c		dec_eb164
521file	arch/alpha/alpha/dec_eb64plus.c		dec_eb64plus
522file	arch/alpha/alpha/dec_eb66.c		dec_eb66
523file	arch/alpha/alpha/dec_kn20aa.c		dec_kn20aa
524file	arch/alpha/alpha/dec_kn8ae.c		dec_kn8ae
525file	arch/alpha/alpha/dec_kn300.c		dec_kn300
526file	arch/alpha/alpha/api_up1000.c		api_up1000
527file	arch/alpha/alpha/avalon_a12.c		avalon_a12
528file	arch/alpha/alpha/dec_1000a.c		dec_1000 | dec_1000a
529file	arch/alpha/alpha/dec_6600.c		dec_6600
530
531# Kernel debugger support
532file	arch/alpha/alpha/db_disasm.c		ddb
533file	arch/alpha/alpha/db_interface.c		ddb
534file	arch/alpha/alpha/db_trace.c		ddb
535
536# Binary compatibility with previous NetBSD releases (COMPAT_XX)
537file	arch/alpha/alpha/compat_13_machdep.c	compat_13
538
539# OSF/1 Binary Compatibility (COMPAT_OSF1)
540include "compat/osf1/files.osf1"
541file	arch/alpha/alpha/osf1_sigcode.s		compat_osf1
542file	arch/alpha/alpha/osf1_syscall.c		compat_osf1
543
544# Linux Binary Compatibility (COMPAT_LINUX)
545include "compat/linux/files.linux"
546include "compat/linux/arch/alpha/files.linux_alpha"
547file	arch/alpha/alpha/linux_sigcode.s	compat_linux
548file	arch/alpha/alpha/linux_syscall.c	compat_linux
549
550# OSS audio driver compatibility
551include "compat/ossaudio/files.ossaudio"
552
553# XXXX pcic here because it needs to be late.  The catch: pcic needs
554# to be late, so devices which attach to it are attached late.  But it
555# needs to be before its isa and pci attachments.  This answer is
556# non-optimal, but I don't have a better answer right now.
557
558# PCIC pcmcia contoller
559# XXX this needs to be done very late, so it's done here.  This feels
560# like a kludge, but it might be for the best.
561
562defopt	PCIC_ISA_ALLOC_IOBASE
563defopt	PCIC_ISA_ALLOC_IOSIZE
564defopt	PCIC_ISA_INTR_ALLOC_MASK
565
566device	pcic: pcmciabus
567file	dev/ic/i82365.c			pcic
568
569# PCIC pcmcia controller on ISA bus.
570attach	pcic at isa with pcic_isa
571file	dev/isa/i82365_isa.c		pcic_isa
572
573# PCIC pcmcia controller on PCI bus.
574attach	pcic at pci with pcic_pci
575file	dev/pci/i82365_pci.c		pcic_pci
576
577# PCIC pcmcia controller on PnP board
578attach pcic at isapnp with pcic_isapnp
579file	dev/isapnp/i82365_isapnp.c	pcic_isapnp
580
581# Code common to ISA and ISAPnP attachments
582file	dev/isa/i82365_isasubr.c	pcic_isa | pcic_isapnp | pcic_pci
583
584
585# this wants to be probed as late as possible.
586#
587# Machine-independent PCMCIA drivers
588#
589include "dev/pcmcia/files.pcmcia"
590#
591# Machine-independent USB device support
592#
593include "dev/usb/files.usb"
594#
595# Machine-independent IEEE 1394 device support
596#
597include "dev/ieee1394/files.ieee1394"
598