summaryrefslogtreecommitdiff
path: root/sys/arch/riscv/conf/GENERIC.common
blob: 7c64f89bb0446bd4df3f9bd0e6139e7fe9340608 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
#
#	$NetBSD: GENERIC.common,v 1.4 2023/06/02 08:51:46 andvar Exp $
#
#	GENERIC common RISC-V kernel config items shared between 32 and 64
#	kernels
#

maxusers 	64		# estimated number of users

options 	FDT
#options 	MULTIPROCESSOR

# Standard system options
options 	FPE		# Floating-point extension support
options 	NTP		# NTP phase/frequency locked loop

options 	KTRACE		# system call tracing via ktrace(1)

# Note: SysV IPC parameters could be changed dynamically, see sysctl(8).
options 	SYSVMSG		# System V-like message queues
options 	SYSVSEM		# System V-like semaphores
options 	SYSVSHM		# System V-like memory sharing

options 	MODULAR		# new style module(7) framework
options 	MODULAR_DEFAULT_AUTOLOAD
options 	USERCONF	# userconf(4) support
#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel

# Alternate buffer queue strategies for better responsiveness under high
# disk I/O load.
#options 	BUFQ_READPRIO
options 	BUFQ_PRIOCSCAN

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
#options 	USBVERBOSE	# verbose USB device autoconfig messages

#
# Because gcc omits the frame pointer for any -O level, the line below
# is needed to make backtraces in DDB work.
#
makeoptions 	COPTS="-O2 -fno-omit-frame-pointer"
makeoptions 	COPY_SYMTAB=1
options 	DDB		# in-kernel debugger
#options 	DDB_COMMANDONENTER="bt"	# execute command when ddb is entered
options 	DDB_ONPANIC=1	# see also sysctl(7): `ddb.onpanic'
options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
#options 	KGDB		# remote debugger
#options 	KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x3f8,KGDB_DEVRATE=9600
#options 	SYSCALL_STATS	# per syscall counts
#options 	SYSCALL_TIMES	# per syscall times
#options 	SYSCALL_TIMES_HASCOUNTER	# use 'broken' rdtsc (soekris)

# Compatibility options
#include 	"conf/compat_netbsd90.config"

# Wedge support
options 	DKWEDGE_AUTODISCOVER	# Automatically add dk(4) instances
options 	DKWEDGE_METHOD_GPT	# Supports GPT partitions as wedges
options 	DKWEDGE_METHOD_BSDLABEL	# Support disklabel entries as wedges
options 	DKWEDGE_METHOD_MBR	# Support MBR partitions as wedges
options 	DKWEDGE_METHOD_APPLE    # Support Apple partitions as wedges
#options 	DKWEDGE_METHOD_RDB	# Support RDB partitions as wedges

include 	"conf/filesystems.config"

# File system options
options 	FFS_EI		# FFS Endian Independent support
#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
options 	QUOTA		# legacy UFS quotas
options 	QUOTA2		# new, in-filesystem UFS quotas
#options 	UFS_DIRHASH	# UFS Large Directory Hashing
options 	WAPBL		# File system journaling support
#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
				# immutable) behave as system flags.
#options 	DISKLABEL_EI	# disklabel Endian Independent support
options 	NFSSERVER	# Network File System server
options 	NFS_BOOT_DHCP	# Support DHCP NFS root

# Networking options
#options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
options 	INET6		# IPV6
options 	IPSEC		# IP security
#options 	IPSEC_DEBUG	# debug for IP security
#options 	MPLS		# MultiProtocol Label Switching (needs mpls)
#options 	MROUTING	# IP multicast routing
#options 	PIM		# Protocol Independent Multicast
#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 	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

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!

# Kernel root file system and dump configuration.
config 		netbsd	root on ? type ?

#
# Device configuration
#

mainbus0 	at root
simplebus* 	at fdt? pass 0

# CPUs
cpus* 		at fdt? pass 0
cpu* 		at fdt? pass 0

intc* 		at cpu? pass 1

# Core-level Interrupt Control block
#clint0		at fdt? pass 2

# Platform-Level Interrupt Controller
plic* 		at fdt? pass 2

# Clocks
fclock* 	at fdt? pass 1

# UART
com* 		at fdt?			# UART

# Firmware devices
#qemufwcfg* 	at fdt?			# QEMU Firmware Configuration device

# RTC devices
gfrtc* 		at fdt?			# Google Goldfish RTC

# USB
xhci* 		at fdt?			# XHCI
usb* 		at usbus?
include "dev/usb/usbdevices.config"
midi*		at midibus?
pseudo-device 	sequencer		# MIDI sequencer


# Virtio devices
virtio* 	at fdt?			# Virtio MMIO device
#viomb* 	at virtio?		# Virtio memory balloon device
ld* 		at virtio?		# Virtio disk device
vioif* 		at virtio?		# Virtio network device
viornd* 	at virtio?		# Virtio entropy device
#vioscsi* 	at virtio?		# Virtio SCSI device

# Pseudo-Devices
# network pseudo-devices
pseudo-device 	bpfilter		# Berkeley packet filter
pseudo-device 	bridge			# simple inter-network bridging
pseudo-device 	carp			# Common Address Redundancy Protocol
pseudo-device 	gif			# IPv[46] over IPv[46] tunnel (RFC 1933)
pseudo-device 	gre			# generic L3 over IP tunnel
pseudo-device 	ipsecif			# interface for routing-based ipsec
pseudo-device 	loop			# network loopback
pseudo-device 	npf			# NPF packet filter
pseudo-device 	ppp			# Point-to-Point Protocol
pseudo-device 	pppoe			# PPP over Ethernet (RFC 2516)
pseudo-device 	swcrypto		# software crypto implementation
pseudo-device 	tun			# network tunneling over tty
pseudo-device 	tap			# virtual Ethernet
pseudo-device 	vether			# Virtual Ethernet for bridge
pseudo-device 	vlan			# IEEE 802.1q encapsulation

# miscellaneous pseudo-devices
pseudo-device 	clockctl		# user control of clock subsystem
pseudo-device 	crypto			# /dev/crypto device
pseudo-device 	lockstat		# lock profiling
pseudo-device 	ksyms			# /dev/ksyms
#pseudo-device 	pad			# pseudo audio device
pseudo-device 	pty			# pseudo-terminals
#options 	RND_COM
pseudo-device 	swwdog			# software watchdog timer -- swwdog(4)


# disk/mass storage pseudo-devices
#pseudo-device 	md			# memory disk device (ramdisk)
#options 	MEMORY_DISK_HOOKS	# enable root ramdisk
#options 	MEMORY_DISK_DYNAMIC	# loaded via kernel module(7)

pseudo-device	vnd			# disk-like interface to files
options 	VND_COMPRESSION		# compressed vnd(4)

# userland interface to drivers, including autoconf and properties retrieval
pseudo-device 	drvctl

options 	PAX_MPROTECT=0		# PaX mprotect(2) restrictions
options 	PAX_ASLR=0		# PaX Address Space Layout Randomization

# Pull in optional local configuration - always at end
cinclude 	"arch/riscv/conf/GENERIC.local"