1# $NetBSD: GENERIC,v 1.207 2023/02/12 14:50:41 abs Exp $
2#
3# GENERIC machine description file
4#
5# This machine description file is used to generate the default NetBSD
6# kernel.  The generic kernel does not include all options, subsystems
7# and device drivers, but should be useful for most applications.
8#
9# The machine description file can be customised for your specific
10# machine to reduce the kernel size and improve its performance.
11#
12# For further information on compiling NetBSD kernels, see the config(8)
13# man page.
14#
15# For further information on hardware support for this architecture, see
16# the intro(4) man page.  For further information about kernel options
17# for this architecture, see the options(4) man page.  For an explanation
18# of each device driver in this file see the section 4 man page for the
19# device.
20
21include 	"arch/pmax/conf/std.pmax"
22
23options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
24
25#ident		"GENERIC-$Revision: 1.207 $"
26
27maxusers	64
28
29options 	MIPS1		# R2000/R3000 CPUs
30options 	MIPS3		# R4000/R4400 CPUs
31
32
33# Support for specific models of DECstation
34options 	DEC_3100	# DECstation 2100, 3100 (kn01)
35options 	DEC_5100	# DECsystem 5100 (kn230)
36options 	DEC_3MAX	# DECstation 5000/200 (kn02)
37options 	DEC_3MIN	# DECstation 5000/1xx (kn02ba), 5000/150 (kn04)
38options 	DEC_MAXINE	# Personal DECstation 5000/xx (kn02ca)
39options 	DEC_3MAXPLUS	# DECstation 5000/240 (kn03), 5000/260 (kn05)
40
41#options 	DEC_5400	# DECsystem 5400 (kn210)
42#options 	DEC_5500	# DECsystem 5500 (kn220)
43#options 	DEC_5800	# DECsystem 58x0 (kn5800)
44
45makeoptions	DEBUG="-g"
46# Standard system options
47options 	DDB			# in-kernel debugger
48options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
49options 	DDB_ONPANIC=1		# don't enter debugger on panic
50options 	DDB_COMMANDONENTER="trace;show registers"
51options 	DIAGNOSTIC		# extra kernel debugging checks
52options 	DEBUG			# extra kernel debugging support
53#options 	LOCKDEBUG
54#options	VMFAULT_TRACE
55#options	PMAP_FAULTINFO
56options 	KTRACE			# system call tracing support
57
58options 	SYSVMSG		# System V-like message queues
59options 	SYSVSEM		# System V-like semaphores
60options 	SYSVSHM		# System V-like memory sharing
61
62options 	USERCONF	# userconf(4) support
63#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
64options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
65
66# Alternate buffer queue strategies for better responsiveness under high
67# disk I/O load.
68#options 	BUFQ_READPRIO
69options 	BUFQ_PRIOCSCAN
70
71#options 	SCSIVERBOSE		# Verbose SCSI errors
72#options 	TCVERBOSE		# recognize "unknown" TC devices
73
74# Old 4.4BSD/pmax kgdb options
75#options 	KGDB			# support for kernel gdb
76#options 	KGDB_DEVRATE=19200	# kernel gdb port rate (default 9600)
77#options 	KGDB_DEV="15*256+0"	# device for kernel gdb
78
79options 	NTP			# network time protocol
80
81
82# File systems
83file-system	FFS		# fast filesystem with user and group quotas
84file-system	MFS		# memory-based filesystem
85file-system	NFS		# Sun NFS-compatible filesystem (client)
86file-system	LFS		# Log-based filesystem (still experimental)
87file-system	CD9660		# ISO 9660 + Rock Ridge file system
88file-system	FDESC		# /dev/fd
89file-system	KERNFS		# /kern (kernel informational filesystem)
90file-system	NULLFS		# loopback file system
91file-system	OVERLAY		# overlay file system
92file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
93file-system	PROCFS		# /proc
94file-system	UMAPFS		# NULLFS + uid and gid remapping
95file-system	UNION
96file-system	PTYFS		# /dev/pts/N support
97file-system	TMPFS		# Efficient memory file-system
98#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
99
100# File system options
101#options 	FFS_EI		# FFS Endian Independent support
102#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
103options 	QUOTA		# legacy UFS quotas
104options 	QUOTA2		# new, in-filesystem UFS quotas
105options 	UFS_DIRHASH	# UFS Large Directory Hashing
106options 	UFS_EXTATTR	# Extended attribute support for UFS1
107options 	WAPBL		# File system journaling support
108options 	LFS_DIRHASH	# LFS version of UFS_DIRHASH - experimental
109options 	NFSSERVER	# Network File System server
110
111# Networking options
112options 	INET		# Internet protocols
113options 	INET6		# IPV6
114#options 	IPSEC		# IP security
115#options 	IPSEC_DEBUG	# debug for IP security
116options 	GATEWAY		# IP packet forwarding
117#options 	MROUTING	# Multicast routing support
118#options 	PIM		# Protocol Independent Multicast
119options 	NETATALK	# AppleTalk networking protocols
120options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
121options 	PPP_DEFLATE	# Deflate compression support for PPP
122options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
123#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
124
125#options 	ALTQ		# Manipulate network interfaces' output queues
126#options 	ALTQ_BLUE	# Stochastic Fair Blue
127#options 	ALTQ_CBQ	# Class-Based Queueing
128#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
129#options 	ALTQ_FIFOQ	# First-In First-Out Queue
130#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
131#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
132#options 	ALTQ_LOCALQ	# Local queueing discipline
133#options 	ALTQ_PRIQ	# Priority Queueing
134#options 	ALTQ_RED	# Random Early Detection
135#options 	ALTQ_RIO	# RED with IN/OUT
136#options 	ALTQ_WFQ	# Weighted Fair Queueing
137
138# JIT compiler for bpfilter
139#options	SLJIT
140#options	BPFJIT
141
142# NetBSD backwards compatibility
143include 	"conf/compat_netbsd12.config"
144
145# Workstation console options
146options 	FONT_BOLD8x16
147options 	FONT_GALLANT12x22
148
149options 	WSEMUL_VT100
150options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
151options 	WS_KERNEL_FG=WSCOL_GREEN
152options 	WS_KERNEL_BG=WSCOL_BLACK
153
154# Disable kernel security levels.  Needed for X with a PX or PXG.
155#options 	INSECURE
156
157# pmax specific
158options 	COMPAT_ULTRIX	# Ultrix compatibility
159#options 	EXEC_AOUT	# Old NetBSD/pmax a.out compatibility
160options 	EXEC_ECOFF	# Ultrix RISC binaries are ECOFF format
161options 	HZ=256		# RTC rate required
162
163options 	NFS_BOOT_DHCP	# superset of BOOTP
164
165config		netbsd		root on ? type ?
166#config		nfsnetbsd	root on ? type nfs
167
168
169mainbus0	at root
170cpu*		at mainbus0
171
172## Peripheral Bus Support (for devices to attach to)
173## ----------------------------------------------------------------------------
174
175# TURBOchannel bus support
176tc*	at	mainbus0
177
178# 3MIN, 3MAX+ and MAXINE have IOASIC in system slot
179ioasic0	at	tc?
180mcclock* at	ioasic? offset ?	# DS1287 RTC
181le*	at	ioasic? offset ?	# LANCE
182dt*	at      ioasic? offset ?        # MAXINE kbd and mouse
183bba*	at	ioasic? offset ?	# MAXINE baseboard audio
184#fdc	at	ioasic? offset ?	# MAXINE floppy disk (not supported)
185zsc0	at	ioasic? offset 0x100000 # Z85C30
186zsc1	at	ioasic? offset 0x180000 # Z85C30
187asc*	at	ioasic? offset ?	# NCR53C94 SCSI with IOASIC
188
189zstty*	at	zsc? channel ?		# serial ports on B/A channels
190lkkbd*	at	zsc1 channel ?		# keyboard port on A channels
191vsms*	at	zsc0 channel ?		# mouse port on A channels
192
193audio*	at	bba?
194
195spkr*	at	audio?			# PC speaker (synthesized)
196
197dtkbd*	at	dt? addr ?
198dtms*	at	dt? addr ?
199
200# 3MAX has TURBOchannel but no IOASIC
201ibus0	at	tc? slot ? offset ?	# 3MAX system slot
202
203# PMAX, 3MAX and MIPSMATE common devices
204mcclock* at	ibus0 addr ?		# DS1287 RTC
205dz*	at	ibus0 addr ?		# DC7085 quad line serial device
206
207lkkbd*	at	dz? line 0		# Keyboard
208vsms*	at	dz? line 1		# Mouse
209
210# TURBOchannel devices
211mfb*	at	tc? slot ? offset ?	# PMAG-A MX Monochrome Framebuffer
212cfb*	at	tc? slot ? offset ?	# PMAG-B CX Color Framebuffer
213tfb*	at	tc? slot ? offset ?	# PMAG-RO TX True Color Framebuffer
214sfb*	at	tc? slot ? offset ?	# PMAGB-B HX Smart Framebuffer
215px*	at	tc? slot ? offset ?	# PMAG-C 2D accelerator
216pxg*	at	tc? slot ? offset ?	# PMAG-D,E,F 3D accelerator
217#sfbp*	at	tc? slot ? offset ?	# PMAGD HX+ Smart Framebuffer
218xcfb*	at	tc? slot ? offset ?	# PMAG-DV Color Framebuffer at MAXINE
219asc*	at	tc? slot ? offset ?	# PMAZ-A single channel SCSI
220le*	at	tc? slot ? offset ?	# PMAD-A LANCE
221tcds*	at	tc? slot ? offset ?	# PMAZB/PMAZC dual channel SCSI
222asc*	at	tcds? chip ?
223
224# PMAX and MIPSMATE
225ibus0	at	mainbus0
226pm*	at	ibus0 addr ?		# 3100 onboard fb
227le*	at	ibus0 addr ?		# 3100, 5100 onboard LANCE
228sii*	at	ibus0 addr ?		# DC7061 onboard SCSI
229
230# Workstation console
231
232wskbd*		at	lkkbd? console ?
233wskbd*		at	dtkbd? console ?
234wsmouse*	at	vsms?
235wsmouse*	at	dtms?
236
237wsdisplay*	at	mfb?
238wsdisplay*	at	cfb?
239wsdisplay*	at	px?
240wsdisplay*	at	pxg?
241wsdisplay*	at	sfb?
242#wsdisplay*	at	sfbp?
243wsdisplay*	at	tfb?
244wsdisplay*	at	xcfb?
245wsdisplay*	at	pm?
246
247
248#########################################################################
249# SCSI configuration							#
250#########################################################################
251
252scsibus* at sii?
253scsibus* at asc?
254
255sd*	at scsibus? target ? lun ?	# SCSI disks
256st*	at scsibus? target ? lun ?	# SCSI tapes
257cd*	at scsibus? target ? lun ?	# SCSI CD-ROMs
258ch*	at scsibus? target ? lun ?	# SCSI changer devices
259ss*	at scsibus? target ? lun ?	# SCSI scanners
260uk*	at scsibus? target ? lun ?	# unknown SCSI
261
262#########################################################################
263# Pseudo-devices							#
264#########################################################################
265
266#
267# accept filters
268pseudo-device   accf_data		# "dataready" accept filter
269pseudo-device   accf_http		# "httpready" accept filter
270
271pseudo-device	loop			# network loopback
272pseudo-device	sl		 	# serial-line IP ports
273pseudo-device	ppp		 	# serial-line IP ports
274pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
275pseudo-device	pty			# pseudo-terminals
276pseudo-device	bpfilter		# packet filter ports
277pseudo-device	carp			# Common Address Redundancy Protocol
278pseudo-device	npf			# NPF packet filter
279#pseudo-device	gre		 	# generic L3 over IP tunnel
280pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
281#pseudo-device	faith			# IPv[46] tcp relay translation i/f
282pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
283pseudo-device	vlan			# IEEE 802.1q encapsulation
284pseudo-device	bridge			# simple inter-network bridging
285#pseudo-device	vether			# Virtual Ethernet for bridge
286pseudo-device	agr			# IEEE 802.3ad link aggregation
287
288pseudo-device	vnd		 	# virtual disk ick
289#options 	VND_COMPRESSION		# compressed vnd(4)
290pseudo-device	ccd			# concatenated disks
291#pseudo-device	cgd		 	# cryptographic disk devices
292pseudo-device	raid			# RAIDframe disk driver
293options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
294# Options to enable various other RAIDframe RAID types.
295#options 	RF_INCLUDE_EVENODD=1
296#options 	RF_INCLUDE_RAID5_RS=1
297#options 	RF_INCLUDE_PARITYLOGGING=1
298#options 	RF_INCLUDE_CHAINDECLUSTER=1
299#options 	RF_INCLUDE_INTERDECLUSTER=1
300#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
301#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
302pseudo-device	fss		 	# file system snapshot device
303pseudo-device	putter			# for puffs and pud
304
305pseudo-device	clockctl		# user control of clock subsystem
306pseudo-device	drvctl			# user control of drive subsystem
307pseudo-device	ksyms			# /dev/ksyms
308pseudo-device 	swwdog			# software watchdog timer -- swwdog(4)
309pseudo-device	wsfont			# wsfont control device
310pseudo-device	wsmux			# wsmux control device
311
312include "dev/veriexec.config"
313
314options 	PAX_ASLR_DEBUG=1	# PaX ASLR debug
315options 	PAX_SEGVGUARD=0		# PaX Segmentation fault guard
316options 	PAX_MPROTECT=1		# PaX mprotect(2) restrictions
317options 	PAX_MPROTECT_DEBUG=1	# PaX mprotect debug
318options 	PAX_ASLR=1		# PaX Address Space Layout Randomization
319
320# Pull in optional local configuration - always at end
321cinclude	"arch/pmax/conf/GENERIC.local"
322