# $NetBSD: GENERIC,v 1.114.2.3 2004/07/15 20:15:38 he Exp $
#
# GENERIC machine description file
# 
# This machine description file is used to generate the default NetBSD
# kernel.  The generic kernel does not include all options, subsystems
# and device drivers, but should be useful for most applications.
#
# The machine description file can be customised for your specific
# machine to reduce the kernel size and improve its performance.
#
# For further information on compiling NetBSD kernels, see the config(8)
# man page.
#
# For further information on hardware support for this architecture, see
# the intro(4) man page.  For further information about kernel options
# for this architecture, see the options(4) man page.  For an explanation
# of each device driver in this file see the section 4 man page for the
# device.

include		"arch/pmax/conf/std.pmax"
include		"arch/pmax/conf/files.pmax_rcons"

options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary

#ident		"GENERIC-$Revision: 1.114.2.3 $"

maxusers	64

options 	MIPS1		# R2000/R3000 CPUs
options 	MIPS3		# R4000/R4400 CPUs


# Support for specific models of DECstation
options 	DEC_3100	# DECstation 2100, 3100 (kn01)
options 	DEC_5100	# DECsystem 5100 (kn230)
options 	DEC_3MAX	# DECstation 5000/200 (kn02)
options 	DEC_3MIN	# DECstation 5000/1xx (kn02ba), 5000/150 (kn04)
options 	DEC_MAXINE	# Personal DECstation 5000/xx (kn02ca)
options 	DEC_3MAXPLUS	# DECstation 5000/240 (kn03), 5000/260 (kn05)

#options 	DEC_5400	# DECsystem 5400 (kn210)
#options 	DEC_5500	# DECsystem 5500 (kn220)
#options 	DEC_5800	# DECsystem 58x0 (kn5800)

# Standard system options
options 	DDB			# in-kernel debugger
#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
options 	DDB_ONPANIC=0		# don't enter debugger on panic
#options 	DIAGNOSTIC		# extra kernel debugging checks
#options 	DEBUG			# extra kernel debugging support
options 	COMPAT_43		# compatibility with 4.3BSD binaries
options 	KTRACE			# system call tracing support
options 	SYSTRACE		# system call vetting via systrace(1)

options 	SYSVMSG		# System V-like message queues
options 	SYSVSEM		# System V-like semaphores
#options 	SEMMNI=10	# number of semaphore identifiers
#options 	SEMMNS=60	# number of semaphores in system
#options 	SEMUME=10	# max number of undo entries per process
#options 	SEMMNU=30	# number of undo structures in system
options 	SYSVSHM		# System V-like memory sharing
#options 	SHMMAXPGS=1024	# 1024 pages is the default
options 	P1003_1B_SEMAPHORE # p1003.1b semaphore support

options 	LKM			# loadable kernel modules

options 	USERCONF	# userconf(4) support
#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel

# Enable experimental buffer queue strategy for better responsiveness under 
# high disk I/O load. Use it with caution - it's not proven to be stable yet.
#options 	NEW_BUFQ_STRATEGY

#options 	SCSIVERBOSE		# Verbose SCSI errors
#options 	TCVERBOSE		# recognize "unknown" TC devices

# Old 4.4BSD/pmax kgdb options
#options 	KGDB			# support for kernel gdb
#options 	KGDB_DEVRATE=19200	# kernel gdb port rate (default 9600)
#options 	KGDB_DEV="15*256+0"	# device for kernel gdb

options 	NTP			# network time protocol


# Filesystem options
file-system	FFS		# fast filesystem with user and group quotas
file-system	MFS		# memory-based filesystem
file-system	NFS		# Sun NFS-compatible filesystem (client)
file-system	LFS		# Log-based filesystem (still experimental)
file-system	CD9660		# ISO 9660 + Rock Ridge file system
file-system	FDESC		# /dev/fd
file-system	KERNFS		# /kern (kernel informational filesystem)
file-system	NULLFS		# loopback file system
file-system	OVERLAY		# overlay file system
file-system	PORTAL		# portal filesystem (still experimental)
file-system	PROCFS		# /proc
file-system	UMAPFS		# NULLFS + uid and gid remapping
file-system	UNION

options 	NFSSERVER	# Sun NFS-compatible filesystem (server)
options 	QUOTA		# UFS quotas
#options 	FFS_EI		# FFS Endian Independant support
options 	SOFTDEP		# FFS soft updates support.
# VNODE_OP_NOINLINE will produce smaller and possibly slightly faster kernels
#options 	VNODE_OP_NOINLINE	# don't inline vnode op calls

# Networking options
options 	INET		# Internet protocols
options 	INET6		# IPV6
#options 	IPSEC		# IP security
#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
#options 	IPSEC_DEBUG	# debug for IP security
options 	GATEWAY		# IP packet forwarding
#options 	MROUTING	# Multicast routing support
#options 	ISO		# OSI networking
#options 	TPIP		# TPIP
#options 	EON		# OSI tunneling over IP
#options 	CCITT,LLC,HDLC	# X.25
options 	NETATALK	# AppleTalk networking protocols
options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
options 	PPP_DEFLATE	# Deflate compression support for PPP
options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
options 	PFIL_HOOKS	# pfil(9) packet filter hooks
options 	IPFILTER_LOG	# ipmon(8) log support
#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG

#options 	ALTQ		# Manipulate network interfaces' output queues
#options 	ALTQ_BLUE	# Stochastic Fair Blue
#options 	ALTQ_CBQ	# Class-Based Queueing
#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
#options 	ALTQ_FIFOQ	# First-In First-Out Queue
#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
#options 	ALTQ_LOCALQ	# Local queueing discipline
#options 	ALTQ_PRIQ	# Priority Queueing
#options 	ALTQ_RED	# Random Early Detection
#options 	ALTQ_RIO	# RED with IN/OUT
#options 	ALTQ_WFQ	# Weighted Fair Queueing

# NetBSD backwards compatibility
#options 	COMPAT_10	# NetBSD 1.0, (needed for X on 386?)
#options 	COMPAT_11	# NetBSD 1.1, EXEC_ELF_NOTELESS
options 	COMPAT_12	# NetBSD 1.2 reboot(), EXEC_ELF_NOTELESS
options 	COMPAT_13	# NetBSD 1.3
options 	COMPAT_14	# NetBSD 1.4
options 	COMPAT_16	# NetBSD 1.6
#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.

# Raster console options
options 	FONT_BOLD8x16		# Font for fb devices
options 	FONT_GALLANT12x22

# pmax specific
options 	COMPAT_ULTRIX	# Ultrix compatibility
#options 	EXEC_AOUT	# Old NetBSD/pmax a.out compatibility
options 	EXEC_ECOFF	# Ultrix RISC binaries are ECOFF format
options 	HZ=256		# RTC rate required

options 	NFS_BOOT_DHCP	# superset of BOOTP

config		netbsd		root on ? type ?
#config		nfsnetbsd	root on ? type nfs


mainbus0	at root
cpu*		at mainbus0

## Peripheral Bus Support (for devices to attach to)
## ----------------------------------------------------------------------------

# TURBOchannel bus support
tc*	at	mainbus0

# 3MIN, 3MAX+ and MAXINE have IOASIC in system slot
ioasic0	at	tc?
mcclock* at	ioasic? offset ?	# DS1287 RTC
le*	at	ioasic? offset ?	# LANCE
scc*	at	ioasic? offset ?	# Z85C30
bba*	at	ioasic? offset ?	# MAXINE baseboard audio
audio*	at	bba?
dtop*	at	ioasic? offset ?	# MAXINE kbd and mouse
#fdc	at	ioasic? offset ?	# MAXINE floppy disk (not supported)
asc*	at	ioasic? offset ?	# NCR53C94 SCSI with IOASIC

# 3MAX has TURBOchannel but no IOASIC
ibus0	at	tc? slot ? offset ?	# 3MAX system slot

# PMAX, 3MAX and MIPSMATE common devices
mcclock* at	ibus0 addr ?		# DS1287 RTC
dc*	at	ibus0 addr ?		# DC7085 quad line serial device

# TURBOchannel devices
mfb*	at	tc? slot ? offset ?	# PMAG-A MX Monochrome Framebuffer
cfb*	at	tc? slot ? offset ?	# PMAG-B CX Color Framebuffer
#tfb*	at	tc? slot ? offset ?	# PMAG-RO TX True Color Framebuffer
sfb*	at	tc? slot ? offset ?	# PMAGB-B HX Smart Framebuffer
px0	at	tc? slot ? offset ?	# PMAG-C,D,E,F PX family
#sfbp*	at	tc? slot ? offset ?	# PMAGD HX+ Smart Framebuffer
xcfb*	at	tc? slot ? offset ?	# PMAG-DV Color Framebuffer at MAXINE
asc*	at	tc? slot ? offset ?	# PMAZ-A single channel SCSI
le*	at	tc? slot ? offset ?	# PMAD-A LANCE
fta*	at	tc? slot ? offset ?	# PMAF-F FDDI
tcds*	at	tc? slot ? offset ?	# PMAZB/PMAZC dual channel SCSI
asc*	at	tcds? chip ?

# PMAX and MIPSMATE
ibus0	at	mainbus0
pm*	at	ibus0 addr ?		# 3100 onboard fb
le*	at	ibus0 addr ?		# 3100, 5100 onboard LANCE
sii*	at	ibus0 addr ?		# DC7061 onboard SCSI

#########################################################################
# SCSI configuration							#
#########################################################################

scsibus* at sii?
scsibus* at asc?

sd*	at scsibus? target ? lun ?	# SCSI disks
st*	at scsibus? target ? lun ?	# SCSI tapes
cd*	at scsibus? target ? lun ?	# SCSI CD-ROMs
ch*	at scsibus? target ? lun ?	# SCSI changer devices
ss*	at scsibus? target ? lun ?	# SCSI scanners
uk*	at scsibus? target ? lun ?	# unknown SCSI

#########################################################################
# Pseudo-devices							#
#########################################################################

pseudo-device	loop		 1	# network loopback
pseudo-device	sl		 4	# serial-line IP ports
pseudo-device	ppp		 2	# serial-line IP ports
pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
pseudo-device	pty			# pseudo-terminals
pseudo-device	bpfilter	16	# packet filter ports
pseudo-device	ipfilter		# IP filter, NAT
#pseudo-device	gre		 2	# generic L3 over IP tunnel
pseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
pseudo-device	vlan			# IEEE 802.1q encapsulation
pseudo-device	bridge			# simple inter-network bridging
#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too

pseudo-device	vnd		 4	# virtual disk ick
pseudo-device	ccd		 4	# concatenated disks
#pseudo-device	cgd		 4	# cryptographic disk devices
pseudo-device	raid		 8	# RAIDframe disk driver
options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
# Options to enable various other RAIDframe RAID types.
#options 	RF_INCLUDE_EVENODD=1
#options 	RF_INCLUDE_RAID5_RS=1
#options 	RF_INCLUDE_PARITYLOGGING=1
#options 	RF_INCLUDE_CHAINDECLUSTER=1
#options 	RF_INCLUDE_INTERDECLUSTER=1
#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1

pseudo-device	rasterconsole	 1 	# NB: raster console requires "fb"
pseudo-device	fb		 3	# up to 3 framebuffers

pseudo-device	rnd			# /dev/random and in-kernel generator
pseudo-device	clockctl		# user control of clock subsystem
pseudo-device	ksyms			# /dev/ksyms
