-# $NetBSD: DISKLESS,v 1.11 1995/11/17 23:31:11 gwr Exp $
+# $NetBSD: DISKLESS,v 1.12 1996/03/26 15:15:46 gwr Exp $
#
# DISKLESS Sun3 (3/50, 3/60, 3/110, 3/160, 3/260)
options COMPAT_SUNOS # can run SunOS 4.1.1 executables
#options COMPAT_09 # NetBSD 0.9,
options COMPAT_10 # NetBSD 1.0,
+options COMPAT_11 # NetBSD 1.1,
options COMPAT_43 # and 4.3BSD
options TCP_COMPAT_42 # TCP bug compatibility with 4.2BSD
+options UCONSOLE # Allow non-root TIOCCONS
# Sun3-specific debugging options
-#options CONTEXT_DEBUG
#options PMAP_DEBUG
#options VMFAULT_TRACE
#options SYSCALL_DEBUG
#options EXEC_DEBUG
#options DIAGNOSTIC
-config netbsd root on nfs swap on nfs
+config bsd root on nfs swap on nfs
+
+#
+# Serial ports
+#
+zstty0 at zsc1 channel 0 # ttya
+zstty1 at zsc1 channel 1 # ttyb
+
+kbd0 at zsc0 channel 0 # keyboard
+ms0 at zsc0 channel 1 # mouse
#
# Network devices
#
# The default cgfour address depends on the machine:
-# 3/60: obio 0xFF200000 .. 0xFF9fffff
+# 3/60: obmem 0xFF200000 .. 0xFF9fffff
# 3/110: different? (not tested)
cgfour0 at obmem0 addr ?
# cgeight0 at obmem0 addr ?
# The default bwtwo address depends on the machine:
-# 3/50: obio 0x100000
-# else: obio 0xff000000
+# 3/50: obmem 0x100000
+# else: obmem 0xff000000
bwtwo0 at obmem0 addr ?
# 3/60 P4 color frame buffer overlay plane, or P4 monochrome frame buffer
#bwtwo1 at obmem0 addr 0xff300000
--- /dev/null
+# $NetBSD: FOUR_TTYS,v 1.1 1996/03/26 15:14:27 gwr Exp $
+
+#
+# FOUR_TTYS Sun3 (3/50, 3/60, 3/110, 3/160, 3/260)
+# like GENERIC but both zs chips are used as ttys
+#
+
+include "std.sun3"
+
+# Machines to be supported by this kernel
+options GENERIC
+options FPU_EMULATE
+options HAVECACHE # Sun3/260 VAC
+
+# Needs to be set per system. i.e change these as you see fit
+maxusers 4
+
+# Standard system options
+options SWAPPAGER, VNODEPAGER, DEVPAGER # paging
+options KTRACE # system call tracing support
+#makeoptions DEBUG="-g" # symbols for kgdb + nm
+options DDB
+
+# Filesystem options
+options NFSSERVER # nfs server support
+options NFSCLIENT # nfs client support
+options FFS # ufs file system
+#
+options CD9660 # ISO 9660 + Rock Ridge file system
+options FDESC # /dev/fd/*
+options FIFO # FIFOs; RECOMMENDED
+options KERNFS # /kern
+options NULLFS # loopback file system
+options PROCFS # /proc
+options UNION # union file system
+
+# Networking options
+options INET # IP prototol stack support
+# XXX - Work-around for root on slow SunOS/Sun3 servers (sigh...)
+options NFS_BOOT_RWSIZE=1024
+
+# Compatability options
+options COMPAT_SUNOS # can run SunOS 4.1.1 executables
+#options COMPAT_09 # NetBSD 0.9,
+options COMPAT_10 # NetBSD 1.0,
+options COMPAT_11 # NetBSD 1.1,
+options COMPAT_43 # and 4.3BSD
+options TCP_COMPAT_42 # TCP bug compatibility with 4.2BSD
+options UCONSOLE # Allow non-root TIOCCONS
+
+# Sun3-specific debugging options
+options PMAP_DEBUG
+#options VMFAULT_TRACE
+#options SYSCALL_DEBUG
+#options EXEC_DEBUG
+options DIAGNOSTIC
+#options SCSIDEBUG
+
+config bsd swap generic
+
+#
+# Serial ports
+#
+zstty0 at zsc1 channel 0 # ttya
+zstty1 at zsc1 channel 1 # ttyb
+#
+# Note that by ommitting "kdb0" and "ms0" one can build
+# a kernel that operates four plain serial lines, where
+# two of them are data-leads-only ports wired up using
+# a custom cable on the keyboard connector.
+#
+zstty2 at zsc0 channel 0 # ttyc
+zstty3 at zsc0 channel 1 # ttyd
+
+#
+# Network devices
+#
+
+# Intel Ethernet (onboard, or VME)
+ie0 at obio0 addr ? level ?
+ie1 at vmes0 addr 0xffe88000 level 3 vect 0x75
+
+# Lance Ethernet (only onboard)
+le0 at obio0 addr ? level ?
+
+#
+# Disk and tape devices
+#
+
+# Sun3 "si" SCSI controller (NCR 5380)
+si0 at obio0 addr ? level ?
+si0 at vmes0 addr 0xff200000 level 2 vect 0x40
+si1 at vmes0 addr 0xff204000 level 2 vect 0x41
+
+# Xylogics 7053 controllers
+# xdc0 at vmel0 addr 0xffffee80 level 2 vect 0x44
+# xdc1 at vmel0 addr 0xffffee90 level 2 vect 0x45
+# xd* at xdc? drive ?
+
+# Xylogics 450/451 controllers
+# xyc0 at vmes0 addr 0xffffee40 level 2 vect 0x48
+# xyc1 at vmes0 addr 0xffffee48 level 2 vect 0x49
+# xy* at xyc? drive ?
+
+# Xylogics 472 tape controllers?
+
+#
+# Frame buffer devices
+#
+
+# The default cgfour address depends on the machine:
+# 3/60: obmem 0xFF200000 .. 0xFF9fffff
+# 3/110: different? (not tested)
+cgfour0 at obmem0 addr ?
+
+# 3/60 P4 accelerated 8-bit color frame buffer
+# cgsix0 at obmem0 addr ?
+
+# 3/60 P4 24-bit color frame buffer
+# cgeight0 at obmem0 addr ?
+
+# The default bwtwo address depends on the machine:
+# 3/50: obmem 0x100000
+# else: obmem 0xff000000
+bwtwo0 at obmem0 addr ?
+# 3/60 P4 color frame buffer overlay plane, or P4 monochrome frame buffer
+#bwtwo1 at obmem0 addr 0xff300000
+# 3/60 plug-in color frame buffer overlay plane
+#bwtwo1 at obmem0 addr 0xff400000
+
+# Sun-3 color board, or CG5 8-bit VME frame buffer.
+cgtwo0 at vmes0 addr 0xff400000 level 4 vect 0xA8
+
+# Support for the CG9 24-bit VME frame buffer.
+# cgnine0 at vmel0 addr 0x08000000
+
+#
+# SCSI infrastructure
+#
+scsibus* at scsi?
+
+# Sun compatible scsi device mappings
+sd0 at scsibus? target 0 lun 0
+sd1 at scsibus? target 0 lun 1
+sd2 at scsibus? target 1 lun 0
+sd3 at scsibus? target 1 lun 1
+sd* at scsibus? target ? lun ?
+
+st0 at scsibus? target 4 lun 0
+st1 at scsibus? target 5 lun 0
+st* at scsibus? target ? lun ?
+
+cd0 at scsibus? target 6 lun 0
+cd* at scsibus? target ? lun ?
+
+#ch* at scsibus? target ? lun ?
+
+# RAM-disk drivers
+pseudo-device rd 2
+
+# Misc.
+pseudo-device loop 1 # network loopback
+pseudo-device bpfilter 8 # packet filter
+pseudo-device sl 2 # CSLIP
+pseudo-device ppp 2 # PPP
+pseudo-device tun 2 # network tunneling over tty
+
+pseudo-device pty 64 # pseudo-terminals
+#pseudo-device vnd 4 # paging to files
-# $NetBSD: GENERIC,v 1.25 1995/11/17 23:31:12 gwr Exp $
+# $NetBSD: GENERIC,v 1.27 1996/03/26 15:15:50 gwr Exp $
#
# GENERIC Sun3 (3/50, 3/60, 3/110, 3/160, 3/260)
# Compatability options
options COMPAT_SUNOS # can run SunOS 4.1.1 executables
-options COMPAT_09 # NetBSD 0.9,
+#options COMPAT_09 # NetBSD 0.9,
options COMPAT_10 # NetBSD 1.0,
+options COMPAT_11 # NetBSD 1.1,
options COMPAT_43 # and 4.3BSD
options TCP_COMPAT_42 # TCP bug compatibility with 4.2BSD
+options UCONSOLE # Allow non-root TIOCCONS
# Sun3-specific debugging options
-#options CONTEXT_DEBUG
-#options PMAP_DEBUG
+options PMAP_DEBUG
#options VMFAULT_TRACE
#options SYSCALL_DEBUG
#options EXEC_DEBUG
options DIAGNOSTIC
-options SCSIDEBUG
+#options SCSIDEBUG
-config netbsd swap generic
+config bsd swap generic
+
+#
+# Serial ports
+#
+zstty0 at zsc1 channel 0 # ttya
+zstty1 at zsc1 channel 1 # ttyb
+
+kbd0 at zsc0 channel 0 # keyboard
+ms0 at zsc0 channel 1 # mouse
#
# Network devices
#
# Sun3 "si" SCSI controller (NCR 5380)
-ncr_si0 at obio0 addr ? level ?
-ncr_si0 at vmes0 addr 0xff200000 level 2 vect 0x40
-ncr_si1 at vmes0 addr 0xff204000 level 2 vect 0x41
+si0 at obio0 addr ? level ?
+si0 at vmes0 addr 0xff200000 level 2 vect 0x40
+si1 at vmes0 addr 0xff204000 level 2 vect 0x41
# Xylogics 7053 controllers
# xdc0 at vmel0 addr 0xffffee80 level 2 vect 0x44
#
# The default cgfour address depends on the machine:
-# 3/60: obio 0xFF200000 .. 0xFF9fffff
+# 3/60: obmem 0xFF200000 .. 0xFF9fffff
# 3/110: different? (not tested)
cgfour0 at obmem0 addr ?
# cgeight0 at obmem0 addr ?
# The default bwtwo address depends on the machine:
-# 3/50: obio 0x100000
-# else: obio 0xff000000
+# 3/50: obmem 0x100000
+# else: obmem 0xff000000
bwtwo0 at obmem0 addr ?
# 3/60 P4 color frame buffer overlay plane, or P4 monochrome frame buffer
#bwtwo1 at obmem0 addr 0xff300000
#ch* at scsibus? target ? lun ?
-
# RAM-disk drivers
-rd0 at mainbus?
-rd1 at mainbus?
+pseudo-device rd 2
# Misc.
pseudo-device loop 1 # network loopback
-# $NetBSD: Makefile.sun3,v 1.35 1995/11/17 23:31:14 gwr Exp $
+# $NetBSD: Makefile.sun3,v 1.43 1996/02/29 20:57:38 cgd Exp $
-#
# Makefile for NetBSD
#
# This makefile is constructed from a machine description:
# -DTRACE compile in kernel tracing hooks
# -DQUOTA compile in file system quotas
-# DEBUG is set to -g by config if debugging is requested (config -g).
-DEBUG?=-O
-# PROF is set to -pg by config if profiling is requested (config -p).
-AS= as
-CC= cc
-CPP= cpp
-LD= ld
-TOUCH= touch -f -c
+# DEBUG is set to -g if debugging.
+# PROF is set to -pg if profiling.
+
+AS?= as
+CC?= cc
+CPP?= cpp
+LD?= ld
+STRIP?= strip -d
+TOUCH?= touch -f -c
# source tree is located via $S relative to the compilation directory
S= ../../../..
SUN3= ../..
-INCLUDES= -I. -I../.. -I$S/arch -I$S/sys -I$S
-COPTS= ${INCLUDES} ${IDENT} -D_KERNEL -Dmc68020 -Dsun3
-# We do NOT want accidental FP instructions in the kernel.
-CFLAGS= -Werror -msoft-float ${DEBUG} ${COPTS}
+INCLUDES= -I. -I$S/arch -I$S
+CPPFLAGS= ${INCLUDES} ${IDENT} -D_KERNEL -Dmc68020 -Dsun3
+CFLAGS= ${DEBUG} -O2 -Werror -msoft-float
+AFLAGS= -x assembler-with-cpp -traditional-cpp -D_LOCORE
+LINKFLAGS= -N -Ttext 0E004000 -e start
# What to use for libkern:
.include "$S/lib/libkern/Makefile.inc"
# capitalized (e.g. C for a .c file), and CONFIG_DEP is _C if the file
# is marked as config-dependent.
-NORMAL_C= ${CC} ${CFLAGS} ${PROF} -c $<
-NORMAL_C_C= ${CC} ${CFLAGS} ${PROF} ${PARAM} -c $<
+NORMAL_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
+NORMAL_C_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} ${PARAM} -c $<
-DRIVER_C= ${CC} ${CFLAGS} ${PROF} -c $<
-DRIVER_C_C= ${CC} ${CFLAGS} ${PROF} ${PARAM} -c $<
+DRIVER_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
+DRIVER_C_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} ${PARAM} -c $<
-PROFILE_C= ${CC} ${COPTS} -S $<; \
- ex - $*.s < ${GPROF.EX}; \
- ${AS} -o $@ $*.s; \
- rm -f $*.s
-
-NORMAL_S= ${CPP} ${COPTS} $< | ${AS} -o $@
-NORMAL_S_C= ${CPP} ${COPTS} ${PARAM} $< | ${AS} -o $@
+NORMAL_S= ${CC} ${AFLAGS} ${CPPFLAGS} -c $<
+NORMAL_S_C= ${CC} ${AFLAGS} ${CPPFLAGS} ${PARAM} -c $<
%OBJS
%CFILES
+%SFILES
+
# load lines for config "xxx" will be emitted as:
# xxx: ${SYSTEM_DEP} swapxxx.o
# ${SYSTEM_LD_HEAD}
# ${SYSTEM_LD} swapxxx.o
# ${SYSTEM_LD_TAIL}
+SYSTEM_OBJ= locore.o \
+ param.o ioconf.o ${OBJS} ${LIBKERN} ${LIBCOMPAT}
+SYSTEM_DEP= Makefile ${SYSTEM_OBJ}
+SYSTEM_LD_HEAD= @rm -f $@
+SYSTEM_LD= @echo ${LD} ${LINKFLAGS} -o $@ '$${SYSTEM_OBJ}' vers.o; \
+ ${LD} ${LINKFLAGS} -o $@ ${SYSTEM_OBJ} vers.o
+SYSTEM_LD_TAIL= @size $@; chmod 755 $@
+
+DEBUG?=
.if ${DEBUG} == "-g"
-LDX=-X
+LINKFLAGS+= -X
+SYSTEM_LD_TAIL+=; \
+ echo cp $@ $@.gdb; rm -f $@.gdb; cp $@ $@.gdb; \
+ echo ${STRIP} $@; ${STRIP} $@
.else
-LDX=-S
+LINKFLAGS+= -S
.endif
-SYSTEM_OBJ= locore.o vnode_if.o ${OBJS} param.o ioconf.o
-SYSTEM_DEP= Makefile ${SYSTEM_OBJ} ${LIBKERN} ${LIBCOMPAT}
-SYSTEM_LD_HEAD= @echo loading $@; rm -f $@
-SYSTEM_LD= -@echo ${LD} ${LDX} -n -N -e start -T 0E004000 -o $@ \
- '$${SYSTEM_OBJ}' vers.o ${LIBKERN} ${LIBCOMPAT}; \
- ${LD} ${LDX} -n -N -e start -T 0E004000 -o $@ \
- ${SYSTEM_OBJ} vers.o ${LIBKERN} ${LIBCOMPAT}
-SYSTEM_LD_TAIL= @size $@; chmod 755 $@; \
- [ X${DEBUG} = X-g ] && { \
- echo cp $@ $@.gdb; rm -f $@.gdb; cp $@ $@.gdb; \
- echo strip -d $@; strip -d $@; } || true
%LOAD
-newvers:
- sh $S/conf/newvers.sh
- ${CC} $(CFLAGS) -c vers.c
+assym.h: genassym
+ ./genassym >assym.h
-clean::
- rm -f eddep netbsd* tags *.o locore.i [a-z]*.s \
- Errs errs linterrs makelinks vnode_if.[ch] genassym
+genassym: genassym.o
+ ${CC} -o $@ genassym.o
-lint: /tmp param.c
- @lint -hbxn -DGENERIC -Dvolatile= ${COPTS} ${PARAM} -UKGDB \
- ${SUN3}/sun3/Locore.c ${CFILES} ${SUN3}/sun3/swapgeneric.c \
- ioconf.c param.c | \
- grep -v 'struct/union .* never defined' | \
- grep -v 'possible pointer alignment problem'
+genassym.o: ${SUN3}/sun3/genassym.c
+ ${NORMAL_C_C}
-locore.o: assym.s ${SUN3}/sun3/locore.s ${SUN3}/include/asm.h \
- ${SUN3}/include/trap.h $S/arch/m68k/include/trap.h
- ${CPP} -DLOCORE ${COPTS} ${SUN3}/sun3/locore.s | ${AS} -o locore.o
+param.c: $S/conf/param.c
+ rm -f param.c
+ cp $S/conf/param.c .
-# depends on root or device configuration
-autoconf.o conf.o : Makefile
+param.o: param.c Makefile
+ ${NORMAL_C_C}
-# depends on the supported CPU types
-locore.o sun3_startup.o pmap.o trap.o : Makefile
+ioconf.o: ioconf.c
+ ${NORMAL_C}
-# depends on network or filesystem configuration
-uipc_domain.o uipc_proto.o vfs_conf.o kern_xxx.o : Makefile
-if_tun.o if_loop.o if_ethersubr.o: Makefile
-in_proto.o: Makefile
+newvers: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP}
+ sh $S/conf/newvers.sh
+ ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c vers.c
-# depend on maxusers
-assym.s: Makefile
-assym.s: genassym
- ./genassym >assym.s
+clean::
+ rm -f eddep *netbsd netbsd.gdb tags *.[io] [a-z]*.s \
+ [Ee]rrs linterrs makelinks genassym genassym.o assym.h
-genassym:
- ${CC} ${INCLUDES} ${IDENT} ${PARAM} -Dmc68020 -Dsun3 \
- -o genassym ${SUN3}/sun3/genassym.c
+lint:
+ @lint -hbxncez -DGENERIC -Dvolatile= ${CPPFLAGS} ${PARAM} -UKGDB \
+ ${SUN3}/sun3/Locore.c ${CFILES} ${SUN3}/sun3/swapgeneric.c \
+ ioconf.c param.c | \
+ grep -v 'static function .* unused'
-depend: assym.s ioconf.c param.c vnode_if.c
- mkdep ${COPTS} ${CFILES} ioconf.c param.c vnode_if.c
- mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${SUN3}/sun3/genassym.c
+tags:
+ @echo "see $S/kern/Makefile for tags"
links:
egrep '#if' ${CFILES} | sed -f $S/conf/defines | \
sed -e 's/:.*//' -e 's/\.c/.o/' | sort -u > dontlink
echo ${CFILES} | tr -s ' ' '\12' | sed 's/\.c/.o/' | \
sort -u | comm -23 - dontlink | \
- sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks
+ sed 's,../.*/\(.*.o\),rm -f \1; ln -s ../GENERIC/\1 \1,' > makelinks
sh makelinks && rm -f dontlink
-tags:
- @echo "see $S/kern/Makefile for tags"
+SRCS= ${SUN3}/sun3/locore.s \
+ param.c ioconf.c ${CFILES} ${SFILES}
+depend: .depend
+.depend: ${SRCS} assym.h param.c
+ mkdep ${AFLAGS} ${CPPFLAGS} ${SUN3}/sun3/locore.s
+ mkdep -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES}
+ mkdep -a ${AFLAGS} ${CPPFLAGS} ${SFILES}
+ mkdep -a ${CFLAGS} ${CPPFLAGS} ${PARAM} ${SUN3}/sun3/genassym.c
-ioconf.o: ioconf.c
- ${CC} ${CFLAGS} -c ioconf.c
-param.c: $S/conf/param.c
- rm -f param.c
- cp $S/conf/param.c .
+# depend on root or device configuration
+autoconf.o conf.o: Makefile
-param.o: param.c Makefile
- ${CC} ${CFLAGS} ${PARAM} -c param.c
+# depend on network or filesystem configuration
+uipc_proto.o vfs_conf.o: Makefile
+
+# depend on maxusers
+genassym.o machdep.o: Makefile
+
+# depend on CPU configuration
+db_machdep.o dvma.o machdep.o pmap.o sun3_startup.o vm_machdep.o: Makefile
-vers.o: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP}
- sh $S/conf/newvers.sh ${KERN_IDENT} ${IDENT}
- ${CC} ${CFLAGS} -c vers.c
-vnode_if.c vnode_if.h : $S/kern/vnode_if.sh $S/kern/vnode_if.src
- AWK="${AWK}" sh $S/kern/vnode_if.sh $S/kern/vnode_if.src
+locore.o: ${SUN3}/sun3/locore.s assym.h
+ ${NORMAL_S}
%RULES
-# $NetBSD: RAMDISK,v 1.2 1995/11/17 23:31:15 gwr Exp $
+# $NetBSD: RAMDISK,v 1.3 1996/03/26 15:15:53 gwr Exp $
#
# RAMDISK: Root/swap on ramdisk
# Networking options
options INET # IP prototol stack support
+# XXX - Work-around for root on slow SunOS/Sun3 servers (sigh...)
+options NFS_BOOT_RWSIZE=1024
-# Compatability options (XXX - Need these?)
+# Compatability options
#options COMPAT_SUNOS # can run SunOS 4.1.1 executables
#options COMPAT_09 # NetBSD 0.9,
options COMPAT_10 # NetBSD 1.0,
+options COMPAT_11 # NetBSD 1.1,
options COMPAT_43 # and 4.3BSD
options TCP_COMPAT_42 # TCP bug compatibility with 4.2BSD
+#options UCONSOLE # Allow non-root TIOCCONS
# Sun3-specific debugging options
options DIAGNOSTIC
# The config program assumes all devices have partions...
# Is it OK to put swap on a non-existent partition?
-config netbsd root on rd0a swap on rd0b
+config bsd root on rd0a swap on rd0b
+
+#
+# Serial ports
+#
+zstty0 at zsc1 channel 0 # ttya
+zstty1 at zsc1 channel 1 # ttyb
+
+kbd0 at zsc0 channel 0 # keyboard
+ms0 at zsc0 channel 1 # mouse
#
# Network devices
#
# Sun3 "si" SCSI controller (NCR 5380)
-ncr_si0 at obio0 addr ? level ?
-ncr_si0 at vmes0 addr 0xff200000 level 2 vect 0x40
-ncr_si1 at vmes0 addr 0xff204000 level 2 vect 0x41
+si0 at obio0 addr ? level ?
+si0 at vmes0 addr 0xff200000 level 2 vect 0x40
+si1 at vmes0 addr 0xff204000 level 2 vect 0x41
# Xylogics 7053 controllers
# xdc0 at vmel0 addr 0xffffee80 level 2 vect 0x44
#ch* at scsibus? target ? lun ?
-
-# RAM Disk (root for install tape)
-rd0 at mainbus?
+# RAM-disk (root for install tape)
+pseudo-device rd 2 # RAM-disk
# Misc.
pseudo-device loop 1 # network loopback
-# $NetBSD: SMD_TEST,v 1.1 1995/10/30 20:58:04 gwr Exp $
+# $NetBSD: SMD_TEST,v 1.2 1996/03/26 15:15:57 gwr Exp $
#
-# GENERIC Sun3 (3/50, 3/60, 3/110, 3/160, 3/260)
-# Supports root on: ie0, le0, sd*, ...
+# SMD_TEST - for Sun3 (3/50, 3/60, 3/110, 3/160, 3/260)
+# Like GENERIC, but includes the SMD disk drivers (xd, xy)
#
include "std.sun3"
# Networking options
options INET # IP prototol stack support
-# XXX - Work-around for slow SunOS/Sun3 servers (sigh...)
+# XXX - Work-around for root on slow SunOS/Sun3 servers (sigh...)
options NFS_BOOT_RWSIZE=1024
# Compatability options
options COMPAT_SUNOS # can run SunOS 4.1.1 executables
-options COMPAT_09 # NetBSD 0.9,
+#options COMPAT_09 # NetBSD 0.9,
options COMPAT_10 # NetBSD 1.0,
+options COMPAT_11 # NetBSD 1.1,
options COMPAT_43 # and 4.3BSD
options TCP_COMPAT_42 # TCP bug compatibility with 4.2BSD
+options UCONSOLE # Allow non-root TIOCCONS
# Sun3-specific debugging options
-#options CONTEXT_DEBUG
#options PMAP_DEBUG
#options VMFAULT_TRACE
#options SYSCALL_DEBUG
options DIAGNOSTIC
#options SCSIDEBUG
-config netbsd swap generic
+config bsd swap generic
-# Devices
+#
+# Serial ports
+#
+zstty0 at zsc1 channel 0 # ttya
+zstty1 at zsc1 channel 1 # ttyb
-bwtwo0 at obmem0 addr ?
-cgtwo0 at vmes0 addr 0xff400000 level 4 vect 0xA8
-cgfour0 at obmem0 addr ?
+kbd0 at zsc0 channel 0 # keyboard
+ms0 at zsc0 channel 1 # mouse
+#
+# Network devices
+#
+
+# Intel Ethernet (onboard, or VME)
ie0 at obio0 addr ? level ?
ie1 at vmes0 addr 0xffe88000 level 3 vect 0x75
+# Lance Ethernet (only onboard)
le0 at obio0 addr ? level ?
+#
+# Disk and tape devices
+#
+
+# Sun3 "si" SCSI controller (NCR 5380)
+si0 at obio0 addr ? level ?
+si0 at vmes0 addr 0xff200000 level 2 vect 0x40
+si1 at vmes0 addr 0xff204000 level 2 vect 0x41
+
+# Xylogics 7053 controllers
xdc0 at vmel0 addr 0xffffee80 level 2 vect 0x44
+xdc1 at vmel0 addr 0xffffee90 level 2 vect 0x45
xd* at xdc? drive ?
+# Xylogics 450/451 controllers
xyc0 at vmes0 addr 0xffffee40 level 2 vect 0x48
+xyc1 at vmes0 addr 0xffffee48 level 2 vect 0x49
xy* at xyc? drive ?
+# Xylogics 472 tape controllers?
+
+#
+# Frame buffer devices
+#
+
+# The default cgfour address depends on the machine:
+# 3/60: obmem 0xFF200000 .. 0xFF9fffff
+# 3/110: different? (not tested)
+cgfour0 at obmem0 addr ?
+
+# 3/60 P4 accelerated 8-bit color frame buffer
+# cgsix0 at obmem0 addr ?
+
+# 3/60 P4 24-bit color frame buffer
+# cgeight0 at obmem0 addr ?
+
+# The default bwtwo address depends on the machine:
+# 3/50: obmem 0x100000
+# else: obmem 0xff000000
+bwtwo0 at obmem0 addr ?
+# 3/60 P4 color frame buffer overlay plane, or P4 monochrome frame buffer
+#bwtwo1 at obmem0 addr 0xff300000
+# 3/60 plug-in color frame buffer overlay plane
+#bwtwo1 at obmem0 addr 0xff400000
+
+# Sun-3 color board, or CG5 8-bit VME frame buffer.
+cgtwo0 at vmes0 addr 0xff400000 level 4 vect 0xA8
+
+# Support for the CG9 24-bit VME frame buffer.
+# cgnine0 at vmel0 addr 0x08000000
+
+#
+# SCSI infrastructure
+#
+scsibus* at scsi?
+
+# Sun compatible scsi device mappings
+sd0 at scsibus? target 0 lun 0
+sd1 at scsibus? target 0 lun 1
+sd2 at scsibus? target 1 lun 0
+sd3 at scsibus? target 1 lun 1
+sd* at scsibus? target ? lun ?
+
+st0 at scsibus? target 4 lun 0
+st1 at scsibus? target 5 lun 0
+st* at scsibus? target ? lun ?
+
+cd0 at scsibus? target 6 lun 0
+cd* at scsibus? target ? lun ?
+
+#ch* at scsibus? target ? lun ?
+
+# RAM-disk drivers
+pseudo-device rd 2
+
+# Misc.
pseudo-device loop 1 # network loopback
pseudo-device bpfilter 8 # packet filter
pseudo-device sl 2 # CSLIP
-# $NetBSD: files.sun3,v 1.17 1996/01/24 22:39:48 gwr Exp $
+# $NetBSD: files.sun3,v 1.23 1996/03/26 15:15:59 gwr Exp $
#
# sun3-specific configuration info
file arch/sun3/sun3/ctrlsp.S
file arch/sun3/sun3/dvma.c
file arch/sun3/sun3/db_machdep.c ddb
+file arch/sun3/sun3/db_memrw.c ddb | kgdb
file arch/sun3/sun3/disksubr.c
+file arch/sun3/sun3/fpu.c
file arch/sun3/sun3/isr.c
+file arch/sun3/sun3/kgdb_stub.c kgdb
file arch/sun3/sun3/machdep.c
file arch/sun3/sun3/mem.c
file arch/sun3/sun3/pmap.c
-#file arch/sun3/sun3/stub.c
+file arch/sun3/sun3/stub.c
file arch/sun3/sun3/sun3_startup.c
file arch/sun3/sun3/sys_machdep.c
file arch/sun3/sun3/trap.c
file arch/sun3/sun3/vector.c
file arch/sun3/sun3/vm_machdep.c
-file arch/m68k/fpe/fpu_emulate.c fpu_emulate
+file arch/sun3/dev/idprom.c
+
+include "../../m68k/fpe/files.fpe"
+
file arch/m68k/m68k/copy.s
file dev/cons.c
-# Declare our "catch-all" root node.
-device mainbus at root {}
-# Misc. mainbus things (catch-all)
-# Control space hack
-device obctl at mainbus {addr = -1, [level = -1]}
-# Floating Point Unit
-device fpu at mainbus {}
-file arch/sun3/sun3/fpu.c fpu
-
+#
# Bus types
#
# The implementation of the bus_* functions in autoconfig.c
# requires these all to agree with <autoconf.h> struct bus_loc
-# On-board MEMory space
-device obmem at mainbus {addr = -1, [level = -1]}
+device mainbus {}
+attach mainbus at root
+file arch/sun3/sun3/mainbus.c mainbus
+
# On-board I/O space
-device obio at mainbus {addr = -1, [level = -1]}
+device obio {addr = -1, [level = -1]}
+attach obio at mainbus
+file arch/sun3/dev/obio.c obio
+
+# On-board MEMory space
+device obmem {addr = -1, [level = -1]}
+attach obmem at mainbus
+file arch/sun3/dev/obmem.c obmem
+
# VME Short space (D16)
-device vmes at mainbus {addr = -1, [level = -1], [vect = -1]}
+device vmes {addr = -1, [level = -1], [vect = -1]}
+attach vmes at mainbus
+
# VME Long space (D32)
-device vmel at mainbus {addr = -1, [level = -1], [vect = -1]}
+device vmel {addr = -1, [level = -1], [vect = -1]}
+attach vmel at mainbus
-file arch/sun3/dev/obctl.c obctl
-file arch/sun3/dev/obio.c obio
-file arch/sun3/dev/obmem.c obmem
-file arch/sun3/dev/vme.c vmes vmel
+file arch/sun3/dev/vme.c vmes | vmel
#
# Machine-independent SCSI drivers
#
# On-Board I/O (OBIO)
#
+device zsc {channel = -1}
+attach zsc at obio
+file arch/sun3/dev/zs.c zsc needs-flag
+file dev/ic/z8530sc.c zsc
-device eeprom at obio
+device eeprom
+attach eeprom at obio
file arch/sun3/dev/eeprom.c eeprom
-device clock at obio
+device clock
+attach clock at obio
file arch/sun3/sun3/clock.c clock
-device ie at obio, vmes: ifnet, ether
+device memerr
+attach memerr at obio
+file arch/sun3/dev/memerr.c memerr
+
+device intreg
+attach intreg at obio
+file arch/sun3/sun3/intreg.c intreg
+
+device ie: ifnet, ether
+attach ie at obio with ie_obio
+attach ie at vmes with ie_vmes
+file arch/sun3/dev/if_ie_obio.c ie_obio
+file arch/sun3/dev/if_ie_vmes.c ie_vmes
file arch/sun3/dev/if_ie.c ie
-file arch/sun3/dev/if_ie_subr.c ie
-device le at obio: ifnet, ether
+device le: ifnet, ether
+attach le at obio
file arch/sun3/dev/if_le.c le
-file arch/sun3/dev/if_le_subr.c le
-device si at obio, vmes: scsi
+device si: scsi, ncr5380sbc
file arch/sun3/dev/si.c si
-
-device ncr_si at obio, vmes: scsi, ncr5380sbc
-file arch/sun3/dev/ncr_si.c ncr_si
+attach si at obio with si_obio
+file arch/sun3/dev/si_obio.c si_obio
+attach si at vmes with si_vmes
+file arch/sun3/dev/si_vme.c si_vmes
#
# Sun-compatible Frame Buffers (?)
#
define sunfb
-file arch/sun3/dev/fb.c sunfb
+file arch/sun3/dev/fb.c # sunfb needs-flag
#
# On-Board MEMory (OBMEM)
#
-device bwtwo at obmem: sunfb
+device bwtwo: sunfb
+attach bwtwo at obmem
file arch/sun3/dev/bw2.c bwtwo needs-flag
-device cgtwo at vmes: sunfb
+device cgtwo: sunfb
+attach cgtwo at vmes
file arch/sun3/dev/cg2.c cgtwo needs-flag
-device cgfour at obmem: sunfb
+device cgfour: sunfb
+attach cgfour at obmem
file arch/sun3/dev/cg4.c cgfour needs-flag
file arch/sun3/dev/bt_subr.c cgfour
#
# VME
#
-device xdc at vmel {drive = -1}
-device xd at xdc: disk
+device xdc {drive = -1}
+attach xdc at vmel
+device xd: disk
+attach xd at xdc
file arch/sun3/dev/xd.c xd needs-flag
-device xyc at vmes {drive = -1}
-device xy at xyc: disk
+device xyc {drive = -1}
+attach xyc at vmes
+device xy: disk
+attach xy at xyc
file arch/sun3/dev/xy.c xy needs-flag
-#
-# On-Board Control (OBCTL)
-#
-device idprom at obctl
-file arch/sun3/dev/idprom.c idprom needs-count
#
# Console (zs) related stuff
#
-device zsc at obio {channel = -1}
-file arch/sun3/dev/zs.c zsc needs-flag
-file dev/ic/z8530sc.c zsc
-device zstty at zsc: tty
+device zstty: tty
+attach zstty at zsc
file dev/ic/z8530tty.c zstty needs-flag
+file arch/sun3/dev/zs_kgdb.c kgdb
define zsevent
file dev/sun/event.c zsevent
-device kbd at zsc: zsevent
+device kbd: zsevent
+attach kbd at zsc
file dev/sun/kbd.c kbd needs-flag
file dev/sun/kbd_tables.c kbd
file arch/sun3/dev/kd.c kbd
-device ms at zsc: zsevent
+device ms: zsevent
+attach ms at zsc
file dev/sun/ms.c ms needs-flag
# RAM Disk for boot tape
-device rd at mainbus
-file dev/ramdisk.c rd needs-count
+pseudo-device rd
+file dev/ramdisk.c rd needs-flag
file arch/sun3/dev/rd_root.c ramdisk_hooks
# Major numbers for root/swap device configuration
-# $NetBSD: std.sun3,v 1.14 1996/01/24 22:39:56 gwr Exp $
+# $NetBSD: std.sun3,v 1.15 1996/03/26 15:16:02 gwr Exp $
# Standard information for sun3's.
machine sun3 m68k
# The root node:
mainbus0 at root
-# control space hack...
-obctl0 at mainbus?
-fpu0 at mainbus?
-
-# main memory
-obmem0 at mainbus?
# device space
obio0 at mainbus?
+# main memory
+obmem0 at mainbus?
# VME D16 space
vmes0 at mainbus?
# VME D32 space
# Devices that should be present in any Sun3 kernel.
-# OBCTL
-idprom0 at obctl? addr ?
-
# OBIO
-eeprom0 at obio? addr ?
-clock0 at obio? addr ?
-
-# Console (zs) stuff
zsc0 at obio? addr ?
zsc1 at obio? addr ?
-kbd0 at zsc0 channel 0
-ms0 at zsc0 channel 1
-zstty* at zsc? channel ?
+eeprom0 at obio? addr ?
+clock0 at obio? addr ?
+memerr0 at obio? addr ?
+intreg0 at obio? addr ?
# Standard defines