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
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
|
# $NetBSD: GENERIC,v 1.145 2023/02/12 14:50:40 abs 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/netwinder/conf/std.netwinder"
options INCLUDE_CONFIG_FILE # embed config file in kernel binary
# estimated number of users
maxusers 32
# Standard system options
options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
#options NTP # NTP phase/frequency locked loop
# Alternate buffer queue strategies for better responsiveness under high
# disk I/O load.
#options BUFQ_READPRIO
options BUFQ_PRIOCSCAN
# CPU options
# For StrongARM systems
options CPU_SA110 # Support the SA110 core
makeoptions CPUFLAGS="-march=armv4 -mtune=strongarm"
# Default console is wscons, if igsfb(4) and pckbc(4) are configured,
# or com(4) otherwise. You can force a serial console with these options
#options CONSDEVNAME="\"com\"",CONCOMADDR=0x3f8,CONSPEED=115200
# File systems
file-system FFS # UFS
#file-system LFS # log-structured file system
file-system MFS # memory file system
file-system NFS # Network file system
#file-system ADOSFS # AmigaDOS-compatible file system
file-system EXT2FS # second extended file system (linux)
#file-system CD9660 # ISO 9660 + Rock Ridge file system
file-system MSDOSFS # MS-DOS file system
file-system FDESC # /dev/fd
file-system KERNFS # /kern
file-system NULLFS # loopback file system
file-system PROCFS # /proc
#file-system UMAPFS # NULLFS + uid and gid remapping
#file-system UNION # union file system
file-system PTYFS # /dev/pts/N support
file-system TMPFS # Efficient memory file-system
#file-system UDF # experimental - OSTA UDF CD/DVD file-system
# 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 UFS_EXTATTR # Extended attribute support for UFS1
options WAPBL # File system journaling support
options NFSSERVER # Network File System server
# 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 MROUTING # IP multicast routing
#options PIM # Protocol Independent Multicast
#options NETATALK # AppleTalk networking
#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
options NFS_BOOT_BOOTP
options NFS_BOOT_DHCP
#options NFS_BOOT_BOOTPARAM
# Compatibility options
options COMPAT_NETBSD32 # allow running arm (e.g. non-earm) binaries
include "conf/compat_netbsd14.config"
# Shared memory options
options SYSVMSG # System V-like message queues
options SYSVSEM # System V-like semaphores
options SYSVSHM # System V-like memory sharing
# Device options
#options MEMORY_DISK_HOOKS # boottime setup of ramdisk
#options MEMORY_DISK_ROOT_SIZE=3400 # Size in blocks
#options MEMORY_DISK_IS_ROOT # use memory disk as root
# Miscellaneous kernel options
options KTRACE # system call tracing, a la ktrace(1)
options IRQSTATS # manage IRQ statistics
#options SCSIVERBOSE # Verbose SCSI errors
options PCIVERBOSE # Verbose PCI descriptions
options MIIVERBOSE # Verbose MII autoconfuration messages
#options PCI_CONFIG_DUMP # verbosely dump PCI config space
#options DDB_KEYCODE=0x40
options USERCONF # userconf(4) support
#options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
# Development and Debugging options
#options ARM700BUGTRACK # track the ARM700 swi bug
#options PORTMASTER # Enable PortMaster only options
#options DIAGNOSTIC # internal consistency checks
#options UVMHIST # kernhist for uvm/pmap subsystems
options DDB # in-kernel debugger
options DDB_HISTORY_SIZE=100 # Enable history editing in DDB
makeoptions DEBUG="-g" # compile full symbol table
makeoptions COPY_SYMTAB=1
config netbsd root on ? type ?
# The main bus device
mainbus0 at root
# The boot CPU
cpu0 at mainbus?
# Core logic
footbridge0 at mainbus?
# footbridge uart
#fcom0 at footbridge?
# system clock via footbridge
#clock* at footbridge?
# PCI bus via footbridge
pci0 at footbridge? # PCI bus
# ISA bus support
pcib* at pci? dev ? function ? # ISA bridge
isa* at pcib?
# PCI IDE Controllers and Devices
# PCI IDE controllers - see pciide(4) for supported hardware.
# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
# how to set up DMA modes for this chip. This may work, or may cause
# a machine hang with some controllers.
#pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver
slide* at pci? dev ? function ? # Symphony Labs IDE controllers
# ATA (IDE) bus support
atabus* at ata?
# IDE drives
# Flags are used only with controllers that support DMA operations
# and mode settings (e.g. some pciide controllers)
# The lowest order four bits (rightmost digit) of the flags define the PIO
# mode to use, the next set of four bits the DMA mode and the third set the
# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
# to use, and the last bit must be 1 for this setting to be used.
# For DMA and UDMA, 0xf (1111) means 'disable'.
# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
# (0xc=1100, 0xa=1010, 0xf=1111)
# 0x0000 means "use whatever the drive claims to support".
wd* at atabus? drive ? flags 0x0000 # the drives themselves
# PCI network interfaces
ne* at pci? dev ? function ? # NE2000 compat ethernet
tlp* at pci? dev ? function ? # DECchip 21x4x (and clones) Ethernet
options TLP_MATCH_21142
# MII/PHY support
icsphy* at mii? phy ? # ISC-189x PHYs
ukphy* at mii? phy ? # generic unknown PHYs
# WSCONS Support
options WSEMUL_VT100 # VT100 / VT220 emulation
# customization of console and kernel output - see dev/wscons/wsdisplayvar.h
options WSDISPLAY_CUSTOM_OUTPUT # color customization from wsconsctl(8)
#options WS_DEFAULT_FG=WSCOL_WHITE
#options WS_DEFAULT_BG=WSCOL_BLACK
#options WS_DEFAULT_COLATTR="(0)"
#options WS_DEFAULT_MONOATTR="(0)"
options WS_KERNEL_FG=WSCOL_GREEN
#options WS_KERNEL_BG=WSCOL_BLACK
options WS_KERNEL_COLATTR=WSATTR_HILIT
#options WS_KERNEL_MONOATTR="(0)"
# compatibility to other console drivers
options WSDISPLAY_COMPAT_PCVT # emulate some ioctls
options WSDISPLAY_COMPAT_SYSCONS # emulate some ioctls
options WSDISPLAY_COMPAT_USL # wsconscfg VT handling
options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
options FONT_GALLANT12x22 # Sun PROM font look-alike
pckbc0 at isa?
pckbd* at pckbc?
wskbd* at pckbd? console ?
pms* at pckbc?
wsmouse* at pms? mux 0
igsfb* at pci? dev ? function ?
wsdisplay* at igsfb? console ?
# ISA Devices
com0 at isa? port 0x3f8 irq 4
lpt0 at isa? port 0x378 irq 7
# Audio Devices
# ISA audio devices
sb0 at isa? port 0x220 irq 3 drq 1 drq2 7 # SoundBlaster
opl* at sb?
mpu* at sb?
midi* at sb? # SB1 MIDI port
# Audio support
audio* at sb?
spkr* at audio? # PC speaker (synthesized)
# Pseudo-Devices
pseudo-device crypto # /dev/crypto device
pseudo-device swcrypto # software crypto implementation
# disk/mass storage pseudo-devices
#pseudo-device md # memory disk device (ramdisk)
pseudo-device vnd # disk-like interface to files
#options VND_COMPRESSION # compressed vnd(4)
pseudo-device fss # file system snapshot device
#pseudo-device cgd # cryptographic disk devices
# network pseudo-devices
pseudo-device bpfilter # Berkeley packet filter
pseudo-device carp # Common Address Redundancy Protocol
pseudo-device pppoe # PPP over Ethernet (RFC 2516)
pseudo-device bridge # simple inter-network bridging
#pseudo-device vether # Virtual Ethernet for bridge
pseudo-device loop # network loopback
#
# accept filters
pseudo-device accf_data # "dataready" accept filter
pseudo-device accf_http # "httpready" accept filter
# miscellaneous pseudo-devices
pseudo-device pty # pseudo-terminals
pseudo-device clockctl # user control of clock subsystem
pseudo-device drvctl # user control of drive subsystem
pseudo-device ksyms # /dev/ksyms
#pseudo-device npf # NPF packet filter
pseudo-device swwdog # software watchdog timer -- swwdog(4)
# wscons pseudo-devices
pseudo-device wsmux # mouse & keyboard multiplexor
#pseudo-device wsfont
include "dev/veriexec.config"
# Pull in optional local configuration - always at end
cinclude "arch/netwinder/conf/GENERIC.local"
|