summaryrefslogtreecommitdiff
path: root/sys/arch/pmax/conf
diff options
context:
space:
mode:
authorThomas Graichen <graichen@cvs.openbsd.org>1996-12-22 15:19:07 +0000
committerThomas Graichen <graichen@cvs.openbsd.org>1996-12-22 15:19:07 +0000
commitca1c7fedd990e6b1e7244233df5a6a638f0e4e31 (patch)
tree20016b11dce3c72001f0e250c8f1a714ed64e546 /sys/arch/pmax/conf
parentde4c3561677938c64d13b1e5112686a88b0b47fe (diff)
update the pmax stuff to NetBSD 961107 - this version i got somehow
compiled on my decstation 2100 (PLUTO) - but it will not fully work out of the box - but i want to bring it into the tree because i get my own pmax on 961228 - so that i have a good startpoint then :-) all the OpenBSD changes to the pmax tree will follow in the next commit
Diffstat (limited to 'sys/arch/pmax/conf')
-rw-r--r--sys/arch/pmax/conf/GENERIC163
-rw-r--r--sys/arch/pmax/conf/Makefile.pmax65
-rw-r--r--sys/arch/pmax/conf/PLUTO6
-rw-r--r--sys/arch/pmax/conf/files.pmax35
4 files changed, 122 insertions, 147 deletions
diff --git a/sys/arch/pmax/conf/GENERIC b/sys/arch/pmax/conf/GENERIC
index 134c1a7ca6c..34c46cba4ca 100644
--- a/sys/arch/pmax/conf/GENERIC
+++ b/sys/arch/pmax/conf/GENERIC
@@ -1,58 +1,64 @@
+# this one isn't working at the moment - i'll make a real OpenBSD GENERIC then
+# i find some time and get OpenBSD/pmax to somekind of snap - t
+
#
-# DECstation (3100 or 5000/xxx)
+# Distribition miniroot kernel (any model) kernel config file
+
#
-# Generic config.new configuration for NetBSD/pmax
-# $NetBSD: GENERIC,v 1.1.4.1 1996/09/09 20:29:33 thorpej Exp $
+# $NetBSD: GENERIC,v 1.7 1996/10/16 08:29:34 jonathan Exp $
#
-include "std.pmax"
+include "arch/pmax/conf/std.pmax"
+
+maxusers 64
-maxusers 8
+options MIPS1 # R2000/R3000 support (new)
+#options MIPS3 # R4000/R4400 support (not finished)
-# enables fudging of swap blocks to swap after a miniroot
-# in the b partition, and make the kernel call setconf() to ask
-# what the root device is.
-options GENERIC
-options CPU_R3000 # R2000/R3000 support
+# Support for specific models of DECstation
+options DS3100 # PMAX (kn01) DECstation 2100, 3100
+options DS5000_25 # MAXINE (kn02ca/xine) support
+options DS5000_100 # 3MIN (kn02ba/kmin) support
+options DS5000_200 # 3MAX (kn02) support
+options DS5000_240 # 3MAXPLUS (kn03) support
-# replaces "cpu ds5k/240"
-options DS5000_240 # 3MAXPLUS (kn03) support
-options DS5000_100 # 3MIN (kn02ba/kmin) support
-options DS5000_25 # MAXINE (kn02ca/xine) support
-options DS5000_200 # 3MAX (kn02) support, one day
-options DS3100 # PMAX (kn01) DECstation 2100, 3100
# You need to set this locally, but it doesn't do much outside the kernel.
# Set up /etc/localtime instead.
-options TIMEZONE="0" # minutes west of GMT (for)
+options TIMEZONE=0
options DST=0 # use daylight savings rules
# Standard system options
options SWAPPAGER # swap pager (anonymous and swap space)
+options VNODEPAGER # vnode pager (mapped files)
options DEVPAGER # device pager (mapped devices)
#options DIAGNOSTIC # extra kernel debugging checks
-options DEBUG # extra kernel debugging support
+#options DEBUG # extra kernel debugging support
options "COMPAT_43" # compatibility with 4.3BSD binaries
options KTRACE # system call tracing support
options "NKMEMCLUSTERS=1024" # 4K pages in kernel malloc pool
-
#options KGDB # support for kernel gdb
#options "KGDBRATE=19200" # kernel gdb port rate (default 9600)
#options "KGDBDEV=15*256+0" # device for kernel gdb
+options NTP # network time protocol
+#options UCONSOLE # users can redirect console (unsafe)
+
+
# Filesystem options
options FIFO # POSIX fifo support (in all filesystems)
-options FFS,QUOTA # fast filesystem with user and group quotas
+options FFS # fast filesystem with user and group quotas
options MFS # memory-based filesystem
options NFSCLIENT # Sun NFS-compatible filesystem (client)
options NFSSERVER # Sun NFS-compatible filesystem (server)
-options KERNFS # kernel data-structure filesystem
+#options KERNFS # kernel data-structure filesystem
#options FDESC # user file descriptor filesystem
#options UMAPFS # uid/gid remapping filesystem
options NULLFS # null layer filesystem
+options UNION
#options LFS # Log-based filesystem (still experimental)
#options PORTAL # portal filesystem (still experimental)
@@ -66,121 +72,68 @@ options GATEWAY # IP packet forwarding
#options TPIP
#options EON
-options COMPAT_10 # Pre-NetBSD 1.1 compatibility
-options COMPAT_11
+# NetBSD backwards compatibility
+#options COMPAT_10 # NetBSD 1.0, (needed for X on 386?)
+#options COMPAT_11 # NetBSD 1.1,
+options COMPAT_12 # Netbsd 1.2 reboot()
+
# pmax specific
options COMPAT_ULTRIX # ultrix compatibility
+options EXEC_ECOFF # Ultrix RISC binaries are ECOFF format
options "HZ=256" # RTC rate required
# Note that this configuration is unlikely to work, yet...
+#config netbsd root on rz0a swap on rz0b and rz1b dumps on rz0b
config gennetbsd swap generic
########################################################################
-# #
-# DECstation Turbochannel configuration and options #
-# #
-########################################################################
-
-tc* at mainbus0 # All but PMAXes have a turbochannel
-
-
-########################################################################
-# Common configuration for machines with IO ASIC chips #
-# (3MIN, MAXINE, 3MAXPLUS) #
+### I/O bus and device options ###
########################################################################
-ioasic0 at tc?
-clock0 at ioasic? # RTC
-asc0 at ioasic? # system SCSI subslot
-scc0 at ioasic?
-le0 at ioasic? # tc onboard lance
-scc1 at ioasic? # Not present on Maxine
-########################################################################
-# MAXINE-only baseboard devices and on-baseboard "options" #
-########################################################################
-xcfb0 at tc? # TC framebuffer "option"
-dtop0 at ioasic0
-#isdn at ioasic0
-#fdc at ioasic0 # floppy disk
+# TC bus and supported options. (All but PMAXes have a turbochannel.)
+include "arch/pmax/conf/tc.std"
+# ioasic standard baseboard options (5000/2x, 5000/1xx, 5000/2[46]0)
+include "arch/pmax/conf/builtin.ioasic"
-########################################################################
-# Configuration for 3MAX (5000/200) which has turbochannel but no ASIC.#
-# 3MAX (5000/200) baseboard devices and on-baseboard "options" #
-########################################################################
-clock0 at mainbus0 # RTC
-dc0 at mainbus0
-le0 at tc? #slot ? offset ? # TC ether "option" on baseboard
-asc0 at tc? # TC scsi "option" on baseboard
-# For now, pretend this machine has an IOASIC.
-dc0 at ioasic? # dc7083 four-port DZ device
+# MAXINE-only ioasic baseboard devices and on-baseboard "options"
+include "arch/pmax/conf/builtin.maxine"
-########################################################################
-# Supported turbochannel option cards #
-########################################################################
-cfb0 at tc?
-mfb0 at tc?
-sfb0 at tc?
-#sfb1 at tc?
-le* at tc? #slot ? offset ? # TC ether option
-#tt0 at tc? #slot? offset ?
-
-
-########################################################################
-# Decstation 2100/3100 (aka PMAX aka KN01) configuration. #
-# (these don't really have any options except a framebuffer.) #
-########################################################################
-clock0 at mainbus0 # RTC
-pm0 at mainbus0 # 3100 onboard fb
-dc0 at mainbus0 # dc7083 four-port DZ device
-le0 at mainbus0 # 3100 onboard lance
-sii0 at mainbus0 # onboard scsi
+# 5000/200-only (aka 3MAX aka KN02) baseboard devices.
+# (KN02 has turbochannel but no IOASIC).
+include "arch/pmax/conf/builtin.3max"
+# 2100/3100-only (aka PMAX aka KN01) baseboard devices.
+# (may also be present on a 5100).
+include "arch/pmax/conf/builtin.3100"
########################################################################
# SCSI configuration #
########################################################################
-#
-# SCSI configuration for new-config machine-independent SCSI driver
-#
-scsibus* at sii?
-scsibus* at asc?
-
-sd* at scsibus? target ? lun ?
-st* at scsibus? target ? lun ?
-cd* at scsibus? target ? lun ?
-ss* at scsibus? target ? lun ?
-uk* at scsibus? target ? lun ?
-
-#
-# SCSI configuration for old DECstation SCSI driver
-#
oldscsibus* at sii?
oldscsibus* at asc?
-
-rz0 at oldscsibus? target ? drive ?
-rz1 at oldscsibus? target ? drive ?
-rz2 at oldscsibus? target ? drive ?
-rz3 at oldscsibus? target ? drive ?
-rz4 at oldscsibus? target ? drive ?
-rz5 at oldscsibus? target ? drive ?
-tz0 at oldscsibus? target? drive ?
-tz1 at oldscsibus? target? drive ?
-
-
#
-# pseudo-devices
+# SCSI configuration for old 4.4bsd/pmax DECstation SCSI driver
#
+include "arch/pmax/conf/scsi.pmax"
+#include "arch/pmax/conf/mi.scsi" # not yet supported
+
+
+########################################################################
+### Pseudo-devices ###
+########################################################################
pseudo-device sl 4 # serial-line IP ports
+pseudo-device ppp 2 # serial-line IP ports
pseudo-device pty 64 # pseudo ptys
pseudo-device bpfilter 16 # packet filter ports
pseudo-device loop
pseudo-device vnd 4 # virtual disk ick
+pseudo-device ccd 4 # concatenated disks
#pseudo-device ether # From old config. what does it mean?
pseudo-device rasterconsole 1 # NB: raster console requires "fb"
-pseudo-device fb 3 # up to 3 framebuffers
+pseudo-device fb 1 # up to 3 framebuffers
diff --git a/sys/arch/pmax/conf/Makefile.pmax b/sys/arch/pmax/conf/Makefile.pmax
index de4b7e34f78..f752b75c9ea 100644
--- a/sys/arch/pmax/conf/Makefile.pmax
+++ b/sys/arch/pmax/conf/Makefile.pmax
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.pmax,v 1.29 1996/05/19 22:44:12 mhitch Exp $
+# $NetBSD: Makefile.pmax,v 1.37 1996/09/30 02:35:34 jonathan Exp $
# Makefile for NetBSD
#
@@ -21,22 +21,28 @@
# DEBUG is set to -g if debugging.
# PROF is set to -pg if profiling.
-AS?= as
CC?= cc
-CPP?= cpp
LD= /usr/local/bin/ld
-STRIP?= strip -d
-TOUCH?= touch -f -c
+MKDEP?= mkdep
+STRIP?= strip
# source tree is located via $S relative to the compilation directory
+.ifndef S
+#S!= cd ../../../..; pwd
S= ../../../..
-PMAX= ../..
+.endif
+PMAX= $S/arch/pmax
-INCLUDES= -I. -I$S/arch -I$S
-CPPFLAGS= ${INCLUDES} ${IDENT} -D_KERNEL -Dpmax
+INCLUDES= -I. -I$S/arch -I$S -nostdinc
+CPPFLAGS= ${INCLUDES} ${IDENT} ${PARAM} -D_KERNEL -Dpmax
CFLAGS= ${DEBUG} -O2 -Werror -mno-abicalls -mcpu=r3000
AFLAGS= -x assembler-with-cpp -traditional-cpp -D_LOCORE
LINKFLAGS= -N -Ttext 80030000 -e start
+STRIPFLAGS= -d
+
+HOSTED_CC= ${CC}
+HOSTED_CPPFLAGS=${CPPFLAGS:S/^-nostdinc$//}
+HOSTED_CFLAGS= ${CFLAGS}
### find out what to use for libkern
.include "$S/lib/libkern/Makefile.inc"
@@ -54,19 +60,13 @@ LIBCOMPAT= ${COMPATLIB}
LIBCOMPAT= ${COMPATLIB_PROF}
.endif
-# compile rules: rules are named ${TYPE}_${SUFFIX}${CONFIG_DEP}
-# where TYPE is NORMAL, DRIVER, or PROFILE}; SUFFIX is the file suffix,
-# capitalized (e.g. C for a .c file), and CONFIG_DEP is _C if the file
-# is marked as config-dependent.
+# compile rules: rules are named ${TYPE}_${SUFFIX} where TYPE is NORMAL or
+# HOSTED}, and SUFFIX is the file suffix, capitalized (e.g. C for a .c file).
NORMAL_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
-NORMAL_C_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} ${PARAM} -c $<
-
-DRIVER_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
-DRIVER_C_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} ${PARAM} -c $<
-
NORMAL_S= ${CC} ${AFLAGS} ${CPPFLAGS} -c $<
-NORMAL_S_C= ${CC} ${AFLAGS} ${CPPFLAGS} ${PARAM} -c $<
+
+HOSTED_C= ${HOSTED_CC} ${HOSTED_CFLAGS} ${HOSTED_CPPFLAGS} -c $<
%OBJS
@@ -79,7 +79,7 @@ NORMAL_S_C= ${CC} ${AFLAGS} ${CPPFLAGS} ${PARAM} -c $<
# ${SYSTEM_LD_HEAD}
# ${SYSTEM_LD} swapxxx.o
# ${SYSTEM_LD_TAIL}
-SYSTEM_OBJ= locore.o fp.o \
+SYSTEM_OBJ= locore.o fp.o locore_machdep.o \
param.o ioconf.o ${OBJS} ${LIBKERN} ${LIBCOMPAT}
SYSTEM_DEP= Makefile ${SYSTEM_OBJ}
SYSTEM_LD_HEAD= @rm -f $@
@@ -92,14 +92,14 @@ DEBUG?=
LINKFLAGS+= -X
SYSTEM_LD_TAIL+=; \
echo cp $@ $@.gdb; rm -f $@.gdb; cp $@ $@.gdb; \
- echo ${STRIP} $@; ${STRIP} $@
+ echo ${STRIP} ${STRIPFLAGS} $@; ${STRIP} ${STRIPFLAGS} $@
.else
LINKFLAGS+= -x
.endif
SYSTEM_LD_TAIL+=;\
mv $@ $@.elf; \
- /usr/local/bin/elf2aout $@.elf $@; \
+ elf2aout $@.elf $@; \
chmod 755 $@
%LOAD
@@ -110,7 +110,7 @@ assym.h: genassym
genassym: genassym.o
${CC} -o $@ genassym.o
-genassym.o: ${S}/arch/pmax/pmax/genassym.c
+genassym.o: $S/arch/pmax/pmax/genassym.c
${CC} ${INCLUDES} ${IDENT} -D_KERNEL -Dpmax -c $<
param.c: $S/conf/param.c
@@ -118,7 +118,7 @@ param.c: $S/conf/param.c
cp $S/conf/param.c .
param.o: param.c Makefile
- ${NORMAL_C_C}
+ ${NORMAL_C}
ioconf.o: ioconf.c
${NORMAL_C}
@@ -133,8 +133,8 @@ clean::
[Ee]rrs linterrs makelinks genassym genassym.o assym.h
lint:
- @lint -hbxncez -DGENERIC -Dvolatile= ${CPPFLAGS} ${PARAM} -UKGDB \
- ${PMAX}/pmax/Locore.c ${CFILES} ${PMAX}/pmax/swapgeneric.c \
+ @lint -hbxncez -DGENERIC -Dvolatile= ${CPPFLAGS} -UKGDB \
+ ${CFILES} ${PMAX}/pmax/swapgeneric.c \
ioconf.c param.c | \
grep -v 'static function .* unused'
@@ -150,13 +150,16 @@ links:
sh makelinks && rm -f dontlink
SRCS= ${PMAX}/pmax/locore.S ${PMAX}/pmax/fp.S \
+ ${PMAX}/pmax/locore_machdep.S \
param.c ioconf.c ${CFILES} ${SFILES}
depend:: .depend
.depend: ${SRCS} assym.h param.c
- mkdep ${AFLAGS} ${CPPFLAGS} ${PMAX}/pmax/locore.S ${PMAX}/pmax/fp.S
- mkdep -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES}
- mkdep -a ${AFLAGS} ${CPPFLAGS} ${SFILES}
- mkdep -a ${CFLAGS} ${CPPFLAGS} ${PARAM} ${S}/arch/pmax/pmax/genassym.c
+ ${MKDEP} ${AFLAGS} ${CPPFLAGS} ${PMAX}/pmax/locore.S ${PMAX}/pmax/fp.S
+ ${MKDEP} ${AFLAGS} ${CPPFLAGS} ${PMAX}/pmax/locore_machdep.S
+ ${MKDEP} -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES}
+ ${MKDEP} -a ${AFLAGS} ${CPPFLAGS} ${SFILES}
+ ${MKDEP} -a ${HOSTED_CFLAGS} ${HOSTED_CPPFLAGS} \
+ $S/arch/pmax/pmax/genassym.c
# depend on root or device configuration
@@ -175,7 +178,11 @@ machdep.o mainbus.o trap.o: Makefile
locore.o: ${PMAX}/pmax/locore.S assym.h
${NORMAL_S}
+
fp.o: ${PMAX}/pmax/fp.S assym.h
${NORMAL_S}
+locore_machdep.o: ${PMAX}/pmax/locore_machdep.S assym.h
+ ${NORMAL_S}
+
%RULES
diff --git a/sys/arch/pmax/conf/PLUTO b/sys/arch/pmax/conf/PLUTO
index 1931c01156d..c236112fb0f 100644
--- a/sys/arch/pmax/conf/PLUTO
+++ b/sys/arch/pmax/conf/PLUTO
@@ -5,13 +5,14 @@
machine pmax
option CPU_R3000
+option MIPS1
option DS3100
option HZ=256
option NKMEMCLUSTERS=1024
option TIMEZONE=0
option DST=0
-maxusers 8
+maxusers 32
option SWAPPAGER
option VNODEPAGER
@@ -26,7 +27,7 @@ option NFSCLIENT
option NFSSERVER
option KTRACE
-config bsd root on rz3a swap on rz3b dumps on rz3b
+config bsd root on rz0a swap on rz0b dumps on rz0b
mainbus0 at root
@@ -42,7 +43,6 @@ rz1 at oldscsibus? target ? drive ?
rz2 at oldscsibus? target ? drive ?
rz3 at oldscsibus? target ? drive ?
rz4 at oldscsibus? target ? drive ?
-rz5 at oldscsibus? target ? drive ?
tz0 at oldscsibus? target ? drive ?
tz1 at oldscsibus? target ? drive ?
diff --git a/sys/arch/pmax/conf/files.pmax b/sys/arch/pmax/conf/files.pmax
index df0a35a0fcf..057f1f962e8 100644
--- a/sys/arch/pmax/conf/files.pmax
+++ b/sys/arch/pmax/conf/files.pmax
@@ -1,4 +1,4 @@
-# $NetBSD: files.pmax,v 1.31.4.1 1996/05/30 03:54:56 mhitch Exp $
+# $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}.
@@ -72,14 +72,21 @@ device oldscsibus {target = -1, drive = -1}
attach oldscsibus at oldscsi
# asc: system-slot or turbochannel-option SCSI interface
-device asc: oldscsi,scsi
-attach asc at ioasic, tc
+#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: oldscsi,scsi
-attach sii at mainbus
+#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
@@ -97,8 +104,12 @@ file arch/pmax/dev/rz.c rz needs-count
# 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
-attach dc at mainbus, ioasic
-file arch/pmax/dev/dc.c dc needs-count
+file arch/pmax/dev/dc.c dc needs-flag
+attach dc at ioasic with dc_ioasic
+file arch/pmax/dev/dc_ioasic.c dc_ioasic
+attach dc at mainbus with dc_ds
+file arch/pmax/dev/dc_ds.c dc_ds
+
# The "desktop bus" on the MAXINE (5k/25). What is it, anyway? ADB?
device dtop
@@ -121,9 +132,10 @@ file dev/tc/if_le_ibus.c le_pmax needs-flag #for kn01_intr
# 3100 (pmax) onboard framebuffer
device pm
-attach pm at mainbus
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 dc_ds
########################################################################
# Turbochannel options.
@@ -167,7 +179,6 @@ file arch/pmax/pmax/conf.c
file arch/pmax/pmax/machdep.c
file arch/pmax/pmax/pmap.c
file arch/pmax/pmax/sys_machdep.c
-file arch/pmax/pmax/trap.c
file arch/pmax/pmax/pmax_trap.c
file arch/pmax/pmax/vm_machdep.c
file arch/pmax/pmax/disksubr.c
@@ -214,7 +225,11 @@ file arch/pmax/pmax/conf-glue.c
# Ultrix Binary Compatibility (COMPAT_ULTRIX)
include "../../../compat/ultrix/files.ultrix"
-# Configs
+# 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