#	$NetBSD: files.pmax,v 1.36 1996/10/13 05:28:48 jonathan Exp $
# DECstation-specific configuration info

# maxpartitions must be first item in files.${ARCH}.
maxpartitions 8

maxusers 2 8 64

#
# Bus-independent devices
#
device mainbus { }			# no locators
attach mainbus at root

device cpu				# not optional
attach cpu at mainbus
file arch/pmax/pmax/cpu.c		cpu

#
# CPU-dependent files
#
#file	arch/pmax/pmax/kn01.c			kn01	# DS3100, pmax
#file	arch/pmax/pmax/kn02.c			kn02	# DS5000/200, 3max
#file	arch/pmax/pmax/kn03.c			kn03	# DS5000/240, 3maxplus
#file	arch/pmax/pmax/kn02ba.c			kn02ba	# DS5000/1xx, 3min(kmin)
#file	arch/pmax/pmax/kn02ca.c			kn02ca	# DS5000/1xx, maxine
#file	arch/pmax/pmax/kn210.c				# DS5400, mipsfair
#file	arch/pmax/pmax/kn220.c				# DS5500, mipsfair2
file	arch/pmax/pmax/kn230.c			kn230	# DS5100, mipsmate
#
# Auto-configuration driver for the turbochannel bus itself.
#
#define	tcbus { }

device tc {[slot = -1], [offset = -1]} ##{ } 
attach tc at mainbus
file	arch/pmax/tc/tc_subr.c		tc		needs-flag
file	dev/tc/tc.c			tc		needs-flag


#
# The TurboChannel IOCTL ASIC. Present on IOASIC machines,
# which is all turbochannel machines ever built except the 3MAX (5000/200).
#
device ioasic { offset = -1 } 		# not really optional
attach ioasic at tc
file	arch/pmax/tc/asic.c		ioasic | dc_ds # TTTTT dc_ds is ugly


# Real-time clock (not optional)
device	clock
attach	clock at ioasic, tc, mainbus
file	arch/pmax/pmax/clock.c		clock


#
# Machine-independent SCSI driver.
#

include "../../../scsi/files.scsi"
#major { st = 10 }
#major { cd = 3 }
#major { sd = 21 }
major { tz = 10 }
major { rz = 21 }

#
# Old 4.4bsd pmax-specific scsi driver (deprecated).
#
define	oldscsi {}
device oldscsibus	{target = -1, drive = -1}
attach oldscsibus at oldscsi

# asc:  system-slot or turbochannel-option SCSI interface
#device asc: oldscsi,scsi
device asc: oldscsi
attach asc at ioasic with asc_ioasic
file	dev/tc/asc_ioasic.c		asc_ioasic
attach asc at tc with asc_tc
file	dev/tc/asc_tc.c			asc_tc

file	dev/tc/asc.c			asc needs-flag

# sii:  kn01 SCSI interface 
#device sii: scsi,oldscsi
device sii: oldscsi
file	arch/pmax/dev/sii.c		sii needs-flag
attach sii at mainbus with sii_ds
file	arch/pmax/dev/sii_ds.c		sii_ds


device	tz: tape
attach	tz at oldscsibus
file	arch/pmax/dev/tz.c		tz needs-count

device	rz: disk
attach	rz at oldscsibus
file	arch/pmax/dev/rz.c		rz needs-count

#
# Optional device-drivers
#

# DC7085 (DZ-like four-port serial device) on mainbus on non-IOASIC machines.
# For the 3MAX (aka kn02 aka 5k/200) pretend that it's on an  ASIC.
device dc
file	arch/pmax/dev/dc.c		dc
attach dc at ioasic with dc_ioasic
file	arch/pmax/dev/dc_ioasic.c	dc_ioasic | dc_ds needs-flag # TTTTT ugly
attach dc at mainbus with dc_ds
file	arch/pmax/dev/dc_ds.c		dc_ds	needs-flag


# The "desktop bus" on the MAXINE (5k/25). What is it, anyway? ADB?
device dtop
attach dtop at ioasic
file	arch/pmax/dev/dtop.c		dtop needs-flag

# LANCE ethernet driver.
#  XXX Should use new machine-independent one instead.
# device defined in sys/conf/files
attach le at ioasic with le_ioasic
attach le at tc with le_tc
attach le at mainbus with le_pmax
#file	arch/pmax/tc/if_le.c		(le_pmax|le_tc|le_ioasic) needs-flag


file	dev/tc/if_le_dec.c		(le_ioasic | le_tc | le_pmax)
file	dev/tc/if_le_ioasic.c		le_ioasic	needs-flag #for le_iomem
file	dev/tc/if_le_tc.c		le_tc
file	dev/tc/if_le_ibus.c		le_pmax		needs-flag #for kn01_intr

# 3100 (pmax) onboard framebuffer
device pm
file	arch/pmax/dev/pm.c		pm needs-flag
file	arch/pmax/dev/bt478.c		pm
attach pm at mainbus with pm_ds
file	arch/pmax/dev/pm_ds.c		pm_ds

########################################################################
# Turbochannel options.
########################################################################

device cfb
attach cfb at tc
file	arch/pmax/dev/cfb.c		cfb needs-flag

device sfb
attach sfb at tc
file	arch/pmax/dev/sfb.c		sfb needs-flag

device mfb
attach mfb at tc
file	arch/pmax/dev/mfb.c		mfb needs-flag

#  Zilog 8350/Intel 82350(?) SCC UART.
device scc
attach scc at ioasic
file	arch/pmax/tc/scc.c		scc needs-flag

# MAXINE onboard framebuffer
device	xcfb
attach	xcfb at tc
file	arch/pmax/dev/xcfb.c 		xcfb needs-flag
file	arch/pmax/dev/ims332.c		xcfb

# DECWRL 45Mbit T3 interface
device	tt
attach	tt at tc
file	arch/pmax/dev/if_tt.c		tt needs-count

## bogus pmax-specific SCSI code. Leave in until new-style config done.
file	arch/pmax/dev/scsi.c

file	arch/pmax/pmax/autoconf.c
file	arch/pmax/pmax/conf.c
#file	arch/pmax/pmax/kadb.c			optional kadb
#file	arch/pmax/pmax/machdep.c		standard config-dependent
file	arch/pmax/pmax/machdep.c
file	arch/pmax/pmax/pmap.c
file	arch/pmax/pmax/sys_machdep.c
file	arch/pmax/pmax/pmax_trap.c
file	arch/pmax/pmax/vm_machdep.c
file	arch/pmax/pmax/disksubr.c
file	arch/pmax/stand/libsa/callvec.c
file	arch/pmax/pmax/mainbus.c

# Console autoconfiguration code: selects between a framebuffers
file	arch/pmax/pmax/cpu_cons.c
file	dev/cons.c

# pmax configuration glue for rconsole. Requires fb pseudo-device.

include "../../../dev/rcons/files.rcons"

pseudo-device	rasterconsole
file	arch/pmax/dev/rcons.c			rasterconsole	needs-flag
file	arch/pmax/dev/font.c			rasterconsole	# rcons fontdef

file	netinet/in_cksum.c
file	netns/ns_cksum.c			ns

## Support code for LK-201 keyboards, mice, and qvss ring buffers
file	arch/pmax/dev/lk201.c		pm | cfb | sfb | mfb | xcfb
file	arch/pmax/dev/qvss_compat.c	fb


# VDAC/RAMDAC support for framebuffers. Other  devices supported by
# NetBSD  may use the same chips, too.
file	arch/pmax/dev/bt459.c			cfb | sfb

#
# Pseudo-device driver for framebuffers.  All user-level requests,
# including open(), go through the fb driver, which presents a consistent
# interface to all framebuffers.  Configure as many units as you
# have framebuffers.  Provides qvss-style interface compatible with
# X11R5 servers.
#
pseudo-device	fb
file	arch/pmax/dev/fb.c		fb needs-count

# Glue for old-style config
file	arch/pmax/pmax/conf-glue.c

# Ultrix Binary Compatibility (COMPAT_ULTRIX)
include "../../../compat/ultrix/files.ultrix"

# Files from NetBSD's mips directory TTTTT
file	arch/pmax/pmax/cpu_exec.c
file	arch/pmax/pmax/mem.c
file	arch/pmax/pmax/trap.c
file	arch/pmax/pmax/mips_machdep.c
file	arch/pmax/pmax/process_machdep.c

# Configs