GENERIC revision 1.5 1 # $NetBSD: GENERIC,v 1.5 2017/02/26 12:03:14 rin 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
21 include "arch/riscv/conf/std.riscv64"
22
23 options INCLUDE_CONFIG_FILE # embed config file in kernel binary
24
25 #ident "GENERIC-$Revision: 1.5 $"
26
27 maxusers 64 # estimated number of users
28
29 # Standard system options
30
31 options NTP # NTP phase/frequency locked loop
32
33 options KTRACE # system call tracing via ktrace(1)
34
35 # Note: SysV IPC parameters could be changed dynamically, see sysctl(8).
36 options SYSVMSG # System V-like message queues
37 options SYSVSEM # System V-like semaphores
38 options SYSVSHM # System V-like memory sharing
39
40 options MODULAR # new style module(7) framework
41 options MODULAR_DEFAULT_AUTOLOAD
42 options USERCONF # userconf(4) support
43 #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
44 options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
45
46 # Alternate buffer queue strategies for better responsiveness under high
47 # disk I/O load.
48 #options BUFQ_READPRIO
49 options BUFQ_PRIOCSCAN
50
51 # Diagnostic/debugging support options
52 options DIAGNOSTIC # inexpensive kernel consistency checks
53 # XXX to be commented out on release branch
54 #options DEBUG # expensive debugging checks/support
55 #options LOCKDEBUG # expensive locking checks/support
56
57 #
58 # Because gcc omits the frame pointer for any -O level, the line below
59 # is needed to make backtraces in DDB work.
60 #
61 #makeoptions COPTS="-O2 -fno-omit-frame-pointer"
62 makeoptions COPY_SYMTAB=1
63 options DDB # in-kernel debugger
64 #options DDB_COMMANDONENTER="bt" # execute command when ddb is entered
65 #options DDB_ONPANIC=1 # see also sysctl(7): `ddb.onpanic'
66 options DDB_HISTORY_SIZE=512 # enable history editing in DDB
67 #options KGDB # remote debugger
68 #options KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x3f8,KGDB_DEVRATE=9600
69 #options SYSCALL_STATS # per syscall counts
70 #options SYSCALL_TIMES # per syscall times
71 #options SYSCALL_TIMES_HASCOUNTER # use 'broken' rdtsc (soekris)
72
73 # Compatibility options
74 options COMPAT_70 # NetBSD 7.0 binary compatibility.
75 options COMPAT_43 # and 4.3BSD
76
77 options COMPAT_OSSAUDIO
78 options COMPAT_NETBSD32
79 #options COMPAT_LINUX
80 #options COMPAT_LINUX32 # req. COMPAT_LINUX and COMPAT_NETBSD32
81 #options EXEC_ELF32
82 options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
83
84 # Wedge support
85 options DKWEDGE_AUTODISCOVER # Automatically add dk(4) instances
86 options DKWEDGE_METHOD_GPT # Supports GPT partitions as wedges
87 options DKWEDGE_METHOD_BSDLABEL # Support disklabel entries as wedges
88 options DKWEDGE_METHOD_MBR # Support MBR partitions as wedges
89 options DKWEDGE_METHOD_APPLE # Support Apple partitions as wedges
90 #options DKWEDGE_METHOD_RDB # Support RDB partitions as wedges
91
92 include "conf/filesystems.config"
93
94 # File system options
95 options QUOTA # legacy UFS quotas
96 options QUOTA2 # new, in-filesystem UFS quotas
97 #options DISKLABEL_EI # disklabel Endian Independent support
98 options FFS_EI # FFS Endian Independent support
99 options WAPBL # File system journaling support
100 # Note that UFS_DIRHASH is suspected of causing kernel memory corruption.
101 # It is not recommended for general use.
102 #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental
103 options NFSSERVER # Network File System server
104 #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
105 # immutable) behave as system flags.
106 #options FFS_NO_SNAPSHOT # No FFS snapshot support
107
108 # Networking options
109 #options GATEWAY # packet forwarding
110 options INET # IP + ICMP + TCP + UDP
111 options INET6 # IPV6
112 options IPSEC # IP security
113 #options IPSEC_DEBUG # debug for IP security
114 #options MPLS # MultiProtocol Label Switching (needs mpls)
115 #options MROUTING # IP multicast routing
116 #options PIM # Protocol Independent Multicast
117 #options NETATALK # AppleTalk networking protocols
118 #options PPP_BSDCOMP # BSD-Compress compression support for PPP
119 #options PPP_DEFLATE # Deflate compression support for PPP
120 #options PPP_FILTER # Active filter support for PPP (requires bpf)
121 #options IPFILTER_LOG # ipmon(8) log support
122 #options IPFILTER_LOOKUP # ippool(8) support
123 #options IPFILTER_COMPAT # Compat for IP-Filter
124 #options IPFILTER_DEFAULT_BLOCK # block all packets by default
125 #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
126
127 #options ALTQ # Manipulate network interfaces' output queues
128 #options ALTQ_BLUE # Stochastic Fair Blue
129 #options ALTQ_CBQ # Class-Based Queueing
130 #options ALTQ_CDNR # Diffserv Traffic Conditioner
131 #options ALTQ_FIFOQ # First-In First-Out Queue
132 #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
133 #options ALTQ_HFSC # Hierarchical Fair Service Curve
134 #options ALTQ_LOCALQ # Local queueing discipline
135 #options ALTQ_PRIQ # Priority Queueing
136 #options ALTQ_RED # Random Early Detection
137 #options ALTQ_RIO # RED with IN/OUT
138 #options ALTQ_WFQ # Weighted Fair Queueing
139
140 # These options enable verbose messages for several subsystems.
141 # Warning, these may compile large string tables into the kernel!
142
143 # Kernel root file system and dump configuration.
144 config netbsd root on ? type ?
145
146 #
147 # Device configuration
148 #
149 mainbus0 at root
150 cpu0 at mainbus0
151 htif0 at mainbus0
152 htifcons0 at htif0
153 htifdisk0 at htif0
154 ld0 at htifdisk0
155
156
157 # Pseudo-Devices
158
159 pseudo-device crypto # /dev/crypto device
160 pseudo-device swcrypto # software crypto implementation
161
162 # disk/mass storage pseudo-devices
163 #pseudo-device md # memory disk device (ramdisk)
164 #options MEMORY_DISK_HOOKS # enable root ramdisk
165 #options MEMORY_DISK_DYNAMIC # loaded via kernel module(7)
166
167 pseudo-device vnd # disk-like interface to files
168 options VND_COMPRESSION # compressed vnd(4)
169
170 pseudo-device loop # network loopback
171 pseudo-device pty # pseudo-terminals
172 pseudo-device clockctl # user control of clock subsystem
173 pseudo-device ksyms # /dev/ksyms
174 pseudo-device lockstat # lock profiling
175
176 # userland interface to drivers, including autoconf and properties retrieval
177 pseudo-device drvctl
178
179 options PAX_MPROTECT=0 # PaX mprotect(2) restrictions
180 options PAX_ASLR=0 # PaX Address Space Layout Randomization
181