1# $NetBSD: GENERIC,v 1.170 2024/01/29 18:27:10 christos 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/bebox/conf/std.bebox"
22
23options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
24
25#ident 		"GENERIC-$Revision: 1.170 $"
26
27maxusers	32
28
29# Standard system options
30
31options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
32options 	NTP		# NTP phase/frequency locked loop
33
34options 	KTRACE		# system call tracing via ktrace(1)
35
36options 	SYSVMSG		# System V-like message queues
37options 	SYSVSEM		# System V-like semaphores
38options 	SYSVSHM		# System V-like memory sharing
39
40options 	USERCONF	# userconf(4) support
41#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
42options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
43
44# Alternate buffer queue strategies for better responsiveness under high
45# disk I/O load.
46#options 	BUFQ_READPRIO
47options 	BUFQ_PRIOCSCAN
48
49# Diagnostic/debugging support options
50#options 	DIAGNOSTIC	# cheap kernel consistency checks
51#options 	DEBUG		# expensive debugging checks/support
52options 	DDB		# in-kernel debugger
53options 	DDB_ONPANIC=1	# see also sysctl(7): `ddb.onpanic'
54options 	DDB_HISTORY_SIZE=512	# Enable history editing in DDB
55#makeoptions	DEBUG="-g"
56
57include 	"conf/compat_netbsd09.config"
58
59#options 	COMPAT_386BSD_MBRPART	# recognize old partition ID
60#options 	COMPAT_LINUX	# Linux binary compatibility
61#options 	COMPAT_OSSAUDIO	# Linux binary compatibility
62
63# File systems
64file-system	FFS		# UFS
65#file-system	EXT2FS		# second extended file system (linux)
66#file-system	LFS		# log-structured file system
67file-system	MFS		# memory file system
68file-system	NFS		# Network File System client
69file-system	CD9660		# ISO 9660 + Rock Ridge file system
70file-system	MSDOSFS		# MS-DOS file system
71#file-system	FDESC		# /dev/fd
72file-system	KERNFS		# /kern
73file-system	NULLFS		# loopback file system
74#file-system	OVERLAY		# overlay file system
75file-system	PROCFS		# /proc
76#file-system	UMAPFS		# NULLFS + uid and gid remapping
77file-system	UNION		# union file system
78#file-system	CODA		# Coda File System; also needs vcoda (below)
79file-system	PTYFS		# /dev/pts/N support
80file-system	TMPFS		# Efficient memory file-system
81#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
82#file-system	HFS		# experimental - Apple HFS+ (read-only)
83
84# File system options
85#options 	APPLE_UFS	# Apple UFS support in FFS
86#options 	FFS_EI		# FFS Endian Independent support
87#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
88options 	QUOTA		# legacy UFS quotas
89options 	QUOTA2		# new, in-filesystem UFS quotas
90options 	UFS_DIRHASH	# UFS Large Directory Hashing
91options 	UFS_EXTATTR	# Extended attribute support for UFS1
92options 	WAPBL		# File system journaling support
93#options 	DISKLABEL_EI	# disklabel Endian Independent support
94#options 	NFSSERVER	# Network File System server
95
96# Networking options
97#options 	GATEWAY		# packet forwarding
98options 	INET		# IP + ICMP + TCP + UDP
99options 	INET6		# IPV6
100#options 	IPSEC		# IP security
101#options 	IPSEC_DEBUG	# debug for IP security
102#options 	MROUTING	# IP multicast routing
103#options 	PIM		# Protocol Independent Multicast
104#options 	NETATALK	# AppleTalk networking protocols
105#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
106#options 	PPP_DEFLATE	# Deflate compression support for PPP
107#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
108#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
109
110#options 	ALTQ		# Manipulate network interfaces' output queues
111#options 	ALTQ_BLUE	# Stochastic Fair Blue
112#options 	ALTQ_CBQ	# Class-Based Queueing
113#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
114#options 	ALTQ_FIFOQ	# First-In First-Out Queue
115#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
116#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
117#options 	ALTQ_LOCALQ	# Local queueing discipline
118#options 	ALTQ_PRIQ	# Priority Queueing
119#options 	ALTQ_RED	# Random Early Detection
120#options 	ALTQ_RIO	# RED with IN/OUT
121#options 	ALTQ_WFQ	# Weighted Fair Queueing
122
123# These options enable verbose messages for several subsystems.
124# Warning, these may compile large string tables into the kernel!
125options 	PCIVERBOSE	# verbose PCI device autoconfig messages
126options 	MIIVERBOSE	# verbose PHY autoconfig messages
127#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
128options 	SCSIVERBOSE	# human readable SCSI error messages
129
130#options 	NFS_BOOT_BOOTPARAM,NFS_BOOT_BOOTP
131
132# wscons options
133# builtin terminal emulations
134#options 	WSEMUL_SUN		# sun terminal emulation
135options 	WSEMUL_VT100		# VT100 / VT220 emulation
136options 	WS_DEFAULT_FG=WSCOL_LIGHT_WHITE
137# compatibility to other console drivers
138options 	WSDISPLAY_COMPAT_USL	# wsconscfg VT handling
139options 	WSDISPLAY_COMPAT_RAWKBD	# can get raw scancodes
140
141config		netbsd	root on ? type ?
142
143mainbus0 at root
144
145cpu*	at mainbus0
146pci0	at mainbus0 bus ?
147
148pci*	at ppb? bus ?
149
150ppb*	at pci? dev ? function ?	# PCI-PCI bridges
151pchb*	at pci? dev ? function ?	# PCI-Host bridges
152pcib*	at pci? dev ? function ?	# PCI-ISA bridges
153
154isa*	at pcib?			# ISA on PCI-ISA bridge
155
156# Console Devices
157
158# wscons
159pckbc0		at isa?			# pc keyboard controller
160pckbd*		at pckbc?		# PC keyboard
161pms*		at pckbc?		# PS/2 mouse for wsmouse
162#options	PMS_DISABLE_POWERHOOK	# Disable PS/2 reset on resume
163#options 	PMS_SYNAPTICS_TOUCHPAD	# Enable support for Synaptics Touchpads
164genfb*		at pci? dev ? function ?
165options 	WSFB_FAKE_VGA_FB
166vga*		at pci? dev ? function ?
167wsdisplay*	at vga? console ?
168wskbd*		at pckbd? console ?
169wsmouse*	at pms? mux 0
170
171# make sure the console display is always wsdisplay0
172wsdisplay0	at wsemuldisplaydev? console 1
173wsdisplay*	at wsemuldisplaydev?
174
175com0	at isa? port 0x3f8 irq 4	# standard PC serial ports
176com1	at isa? port 0x2f8 irq 3
177com2	at isa? port 0x380 irq 22
178com3	at isa? port 0x388 irq 23
179
180lpt0	at isa? port 0x378 irq 7	# standard PC parallel ports
181
182mcclock0 at isa? port 0x70		# time-of-day clock
183attimer0 at isa?
184#pcppi0	at isa?
185#spkr*	at pcppi?
186
187wss0	at isa? port 0x82c irq 30 drq 6 drq2 7	# Windows Sound System
188
189# Audio support
190audio*	at audiobus?
191
192spkr*	at audio?			# PC speaker (synthesized)
193
194# MIDI support
195#midi*	at pcppi?			# MIDI interface to the PC speaker
196
197# Joystick driver. Probe is a little strange; add only if you have one.
198joy0	at isa? port 0x201
199
200siop*	at pci? dev ? function ?	# NCR 538XX SCSI controllers
201scsibus* at siop?
202
203sd*	at scsibus? target ? lun ?	# SCSI disk drives
204#st*	at scsibus? target ? lun ?	# SCSI tape drives
205cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
206#ch*	at scsibus? target ? lun ?	# SCSI autochangers
207#ss*	at scsibus? target ? lun ?	# SCSI scanners
208#uk*	at scsibus? target ? lun ?	# SCSI unknown
209
210fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
211fd0	at fdc? drive 1
212#fd*	at fdc? drive ?
213
214wdc0	at isa? port 0x1f0 irq 14	# ST506, ESDI, and IDE controllers
215
216atabus* at ata?
217wd*	at atabus? drive ?
218
219# ATAPI bus support
220atapibus* at atapi?
221
222# ATAPI devices
223# flags have the same meaning as for IDE drives.
224cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
225#sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
226#st*	at atapibus? drive ? flags 0x0000	# ATAPI tape drives
227#uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
228
229# Network devices
230ec0	at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
231ne0	at isa? port 0x300 irq 5	# NE[12]000 ethernet cards
232fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
233ne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
234tlp*	at pci? dev ? function ?	# DECchip 21x4x and clones
235
236# MII/PHY support
237ukphy*  at mii? phy ?                   # generic unknown PHYs
238
239# TV cards
240
241# Brooktree 848/849/878/879 based TV cards
242bktr*	at pci? dev ? function ?	# Brooktree video/audio capture/tuner
243
244
245# Pseudo-Devices
246
247pseudo-device	crypto			# /dev/crypto device
248					# (disabled, requires generic softints)
249pseudo-device	swcrypto		# software crypto implementation
250
251# disk/mass storage pseudo-devices
252#pseudo-device	bio			# RAID control device driver
253pseudo-device	ccd			# concatenated/striped disk devices
254pseudo-device	cgd			# cryptographic disk devices
255#pseudo-device	raid			# RAIDframe disk driver
256#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
257# Options to enable various other RAIDframe RAID types.
258#options 	RF_INCLUDE_EVENODD=1
259#options 	RF_INCLUDE_RAID5_RS=1
260#options 	RF_INCLUDE_PARITYLOGGING=1
261#options 	RF_INCLUDE_CHAINDECLUSTER=1
262#options 	RF_INCLUDE_INTERDECLUSTER=1
263#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
264#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
265pseudo-device	fss			# file system snapshot device
266
267pseudo-device	md			# memory disk device
268pseudo-device	vnd			# disk-like interface to files
269options 	VND_COMPRESSION		# compressed vnd(4)
270
271# network pseudo-devices
272pseudo-device	bpfilter		# packet filter
273pseudo-device	carp			# Common Address Redundancy Protocol
274pseudo-device	npf			# NPF packet filter
275pseudo-device	loop			# network loopback
276pseudo-device	ppp			# Point-to-Point Protocol
277pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
278pseudo-device	sl			# Serial Line IP
279#pseudo-device	irframetty		# IrDA frame line discipline
280pseudo-device	tap			# virtual Ethernet
281pseudo-device	tun			# network tunneling over tty
282#pseudo-device	gre			# generic L3 over IP tunnel
283#pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
284#pseudo-device	faith			# IPv[46] tcp relay translation i/f
285#pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
286#pseudo-device	vlan			# IEEE 802.1q encapsulation
287#pseudo-device	bridge			# simple inter-network bridging
288#pseudo-device	vether			# Virtual Ethernet for bridge
289#pseudo-device	agr			# IEEE 802.3ad link aggregation
290# srt is EXPERIMENTAL
291#pseudo-device	srt			# source-address-based routing
292
293#
294# accept filters
295pseudo-device   accf_data		# "dataready" accept filter
296pseudo-device   accf_http		# "httpready" accept filter
297
298# miscellaneous pseudo-devices
299pseudo-device	pty			# pseudo-terminals
300#pseudo-device	sequencer		# MIDI sequencer
301#options 	RND_COM			# use "com" randomness as well (BROKEN)
302pseudo-device	clockctl		# user control of clock subsystem
303pseudo-device	ksyms			# /dev/ksyms
304pseudo-device	lockstat		# lock profiling
305#pseudo-device	bcsp			# BlueCore Serial Protocol
306#pseudo-device	btuart			# Bluetooth HCI UART (H4)
307pseudo-device 	swwdog			# software watchdog timer -- swwdog(4)
308
309# a pseudo device needed for Coda	# also needs CODA (above)
310#pseudo-device	vcoda			# coda minicache <-> venus comm.
311
312# wscons pseudo-devices
313pseudo-device	wsmux			# mouse & keyboard multiplexor
314pseudo-device	wsfont
315
316# pseudo audio device driver
317#pseudo-device	pad
318
319# userland interface to drivers, including autoconf and properties retrieval
320pseudo-device	drvctl
321
322include "dev/veriexec.config"
323
324#options 	PAX_MPROTECT=0		# PaX mprotect(2) restrictions
325#options 	PAX_ASLR=0		# PaX Address Space Layout Randomization
326
327# Pull in optional local configuration - always at end
328cinclude	"arch/bebox/conf/GENERIC.local"
329