GENERIC revision 1.137 1 1.137 christos # $NetBSD: GENERIC,v 1.137 2013/04/27 21:43:18 christos Exp $
2 1.1 sakamoto #
3 1.48 gmcgarry # GENERIC machine description file
4 1.108 kiyohara #
5 1.48 gmcgarry # This machine description file is used to generate the default NetBSD
6 1.48 gmcgarry # kernel. The generic kernel does not include all options, subsystems
7 1.48 gmcgarry # and device drivers, but should be useful for most applications.
8 1.1 sakamoto #
9 1.48 gmcgarry # The machine description file can be customised for your specific
10 1.48 gmcgarry # machine to reduce the kernel size and improve its performance.
11 1.48 gmcgarry #
12 1.48 gmcgarry # For further information on compiling NetBSD kernels, see the config(8)
13 1.48 gmcgarry # man page.
14 1.48 gmcgarry #
15 1.48 gmcgarry # For further information on hardware support for this architecture, see
16 1.48 gmcgarry # the intro(4) man page. For further information about kernel options
17 1.48 gmcgarry # for this architecture, see the options(4) man page. For an explanation
18 1.48 gmcgarry # of each device driver in this file see the section 4 man page for the
19 1.48 gmcgarry # device.
20 1.1 sakamoto
21 1.48 gmcgarry include "arch/bebox/conf/std.bebox"
22 1.23 hubertf
23 1.123 kiyohara options INCLUDE_CONFIG_FILE # embed config file in kernel binary
24 1.55 atatat
25 1.137 christos #ident "GENERIC-$Revision: 1.137 $"
26 1.1 sakamoto
27 1.1 sakamoto maxusers 32
28 1.1 sakamoto
29 1.108 kiyohara # Standard system options
30 1.108 kiyohara
31 1.108 kiyohara options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
32 1.108 kiyohara options NTP # NTP phase/frequency locked loop
33 1.108 kiyohara
34 1.108 kiyohara options KTRACE # system call tracing via ktrace(1)
35 1.108 kiyohara
36 1.108 kiyohara options SYSVMSG # System V-like message queues
37 1.108 kiyohara options SYSVSEM # System V-like semaphores
38 1.108 kiyohara options SYSVSHM # System V-like memory sharing
39 1.108 kiyohara
40 1.108 kiyohara options USERCONF # userconf(4) support
41 1.108 kiyohara #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
42 1.74 atatat options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
43 1.60 junyoung
44 1.108 kiyohara # Enable experimental buffer queue strategy for better responsiveness under
45 1.60 junyoung # high disk I/O load. Use it with caution - it's not proven to be stable yet.
46 1.82 tsutsui #options BUFQ_READPRIO
47 1.82 tsutsui #options BUFQ_PRIOCSCAN
48 1.1 sakamoto
49 1.108 kiyohara # Diagnostic/debugging support options
50 1.108 kiyohara #options DIAGNOSTIC # cheap kernel consistency checks
51 1.108 kiyohara #options DEBUG # expensive debugging checks/support
52 1.108 kiyohara #options KMEMSTATS # kernel memory statistics (vmstat -m)
53 1.108 kiyohara options DDB # in-kernel debugger
54 1.108 kiyohara options DDB_ONPANIC=1 # see also sysctl(8): `ddb.onpanic'
55 1.108 kiyohara options DDB_HISTORY_SIZE=512 # Enable history editing in DDB
56 1.108 kiyohara #makeoptions DEBUG="-g"
57 1.108 kiyohara
58 1.108 kiyohara options COMPAT_09 # NetBSD 0.9,
59 1.108 kiyohara options COMPAT_10 # NetBSD 1.0,
60 1.108 kiyohara options COMPAT_11 # NetBSD 1.1,
61 1.108 kiyohara options COMPAT_12 # NetBSD 1.2,
62 1.108 kiyohara options COMPAT_13 # NetBSD 1.3,
63 1.108 kiyohara options COMPAT_14 # NetBSD 1.4,
64 1.108 kiyohara options COMPAT_15 # NetBSD 1.5,
65 1.108 kiyohara options COMPAT_16 # NetBSD 1.6,
66 1.108 kiyohara options COMPAT_20 # NetBSD 2.0,
67 1.108 kiyohara options COMPAT_30 # NetBSD 3.0 compatibility.
68 1.109 tsutsui options COMPAT_40 # NetBSD 4.0 compatibility.
69 1.115 mrg options COMPAT_50 # NetBSD 5.0 compatibility.
70 1.132 apb options COMPAT_60 # NetBSD 6.0 compatibility.
71 1.108 kiyohara options COMPAT_43 # 4.3BSD
72 1.108 kiyohara #options COMPAT_386BSD_MBRPART # recognize old partition ID
73 1.108 kiyohara #options COMPAT_LINUX # Linux binary compatibility
74 1.40 abs #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended.
75 1.75 christos options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
76 1.1 sakamoto
77 1.108 kiyohara # File systems
78 1.108 kiyohara file-system FFS # UFS
79 1.108 kiyohara #file-system EXT2FS # second extended file system (linux)
80 1.108 kiyohara #file-system LFS # log-structured file system
81 1.108 kiyohara file-system MFS # memory file system
82 1.108 kiyohara file-system NFS # Network File System client
83 1.108 kiyohara file-system CD9660 # ISO 9660 + Rock Ridge file system
84 1.108 kiyohara file-system MSDOSFS # MS-DOS file system
85 1.108 kiyohara #file-system FDESC # /dev/fd
86 1.108 kiyohara file-system KERNFS # /kern
87 1.108 kiyohara file-system NULLFS # loopback file system
88 1.108 kiyohara #file-system OVERLAY # overlay file system
89 1.118 chs file-system PROCFS # /proc
90 1.108 kiyohara #file-system UMAPFS # NULLFS + uid and gid remapping
91 1.108 kiyohara file-system UNION # union file system
92 1.108 kiyohara #file-system CODA # Coda File System; also needs vcoda (below)
93 1.108 kiyohara #file-system SMBFS # CIFS; also needs nsmb (below)
94 1.118 chs file-system PTYFS # /dev/pts/N support
95 1.118 chs file-system TMPFS # Efficient memory file-system
96 1.95 reinoud #file-system UDF # experimental - OSTA UDF CD/DVD file-system
97 1.108 kiyohara #file-system HFS # experimental - Apple HFS+ (read-only)
98 1.1 sakamoto
99 1.108 kiyohara # File system options
100 1.126 bouyer options QUOTA # legacy UFS quotas
101 1.126 bouyer options QUOTA2 # new, in-filesystem UFS quotas
102 1.127 wiz #options FFS_EI # FFS Endian Independent support
103 1.129 dholland options WAPBL # File system journaling support
104 1.108 kiyohara #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental
105 1.108 kiyohara #options NFSSERVER # Network File System server
106 1.93 tsutsui #options FFS_NO_SNAPSHOT # No FFS snapshot support
107 1.108 kiyohara #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
108 1.108 kiyohara # immutable) behave as system flags.
109 1.108 kiyohara #options APPLE_UFS # Apple UFS support in FFS
110 1.108 kiyohara
111 1.108 kiyohara # Networking options
112 1.108 kiyohara #options GATEWAY # packet forwarding
113 1.108 kiyohara options INET # IP + ICMP + TCP + UDP
114 1.21 itojun options INET6 # IPV6
115 1.21 itojun #options IPSEC # IP security
116 1.84 tron #options IPSEC_NAT_T # IPsec NAT traversal (NAT-T)
117 1.21 itojun #options IPSEC_DEBUG # debug for IP security
118 1.108 kiyohara #options MROUTING # IP multicast routing
119 1.108 kiyohara #options PIM # Protocol Independent Multicast
120 1.108 kiyohara #options NETATALK # AppleTalk networking protocols
121 1.108 kiyohara #options PPP_BSDCOMP # BSD-Compress compression support for PPP
122 1.108 kiyohara #options PPP_DEFLATE # Deflate compression support for PPP
123 1.108 kiyohara #options PPP_FILTER # Active filter support for PPP (requires bpf)
124 1.108 kiyohara #options PFIL_HOOKS # pfil(9) packet filter hooks
125 1.108 kiyohara #options IPFILTER_LOG # ipmon(8) log support
126 1.108 kiyohara #options IPFILTER_LOOKUP # ippool(8) support
127 1.119 mrg options IPFILTER_COMPAT # Compat for IP-Filter
128 1.108 kiyohara #options IPFILTER_DEFAULT_BLOCK # block all packets by default
129 1.40 abs #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
130 1.5 sakamoto
131 1.73 abs #options ALTQ # Manipulate network interfaces' output queues
132 1.73 abs #options ALTQ_BLUE # Stochastic Fair Blue
133 1.73 abs #options ALTQ_CBQ # Class-Based Queueing
134 1.73 abs #options ALTQ_CDNR # Diffserv Traffic Conditioner
135 1.73 abs #options ALTQ_FIFOQ # First-In First-Out Queue
136 1.73 abs #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
137 1.73 abs #options ALTQ_HFSC # Hierarchical Fair Service Curve
138 1.73 abs #options ALTQ_LOCALQ # Local queueing discipline
139 1.73 abs #options ALTQ_PRIQ # Priority Queueing
140 1.73 abs #options ALTQ_RED # Random Early Detection
141 1.73 abs #options ALTQ_RIO # RED with IN/OUT
142 1.73 abs #options ALTQ_WFQ # Weighted Fair Queueing
143 1.73 abs
144 1.108 kiyohara # These options enable verbose messages for several subsystems.
145 1.108 kiyohara # Warning, these may compile large string tables into the kernel!
146 1.108 kiyohara options PCIVERBOSE # verbose PCI device autoconfig messages
147 1.108 kiyohara options MIIVERBOSE # verbose PHY autoconfig messages
148 1.108 kiyohara #options PCI_CONFIG_DUMP # verbosely dump PCI config space
149 1.108 kiyohara options SCSIVERBOSE # human readable SCSI error messages
150 1.1 sakamoto
151 1.108 kiyohara #options NFS_BOOT_BOOTPARAM,NFS_BOOT_BOOTP
152 1.1 sakamoto
153 1.108 kiyohara # wscons options
154 1.108 kiyohara # builtin terminal emulations
155 1.108 kiyohara #options WSEMUL_SUN # sun terminal emulation
156 1.108 kiyohara options WSEMUL_VT100 # VT100 / VT220 emulation
157 1.108 kiyohara options WS_DEFAULT_FG=WSCOL_LIGHT_WHITE
158 1.120 kiyohara # compatibility to other console drivers
159 1.131 abs options WSDISPLAY_COMPAT_USL # wsconscfg VT handling
160 1.120 kiyohara options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
161 1.34 itojun
162 1.108 kiyohara config netbsd root on ? type ?
163 1.1 sakamoto
164 1.1 sakamoto mainbus0 at root
165 1.1 sakamoto
166 1.41 matt cpu* at mainbus0
167 1.1 sakamoto pci0 at mainbus0 bus ?
168 1.1 sakamoto
169 1.108 kiyohara pci* at ppb? bus ?
170 1.108 kiyohara
171 1.1 sakamoto ppb* at pci? dev ? function ? # PCI-PCI bridges
172 1.1 sakamoto pchb* at pci? dev ? function ? # PCI-Host bridges
173 1.1 sakamoto pcib* at pci? dev ? function ? # PCI-ISA bridges
174 1.1 sakamoto
175 1.1 sakamoto isa* at pcib? # ISA on PCI-ISA bridge
176 1.1 sakamoto
177 1.108 kiyohara # Console Devices
178 1.108 kiyohara
179 1.108 kiyohara # wscons
180 1.108 kiyohara pckbc0 at isa? # pc keyboard controller
181 1.108 kiyohara pckbd* at pckbc? # PC keyboard
182 1.108 kiyohara pms* at pckbc? # PS/2 mouse for wsmouse
183 1.108 kiyohara #options PMS_DISABLE_POWERHOOK # Disable PS/2 reset on resume
184 1.121 kiyohara #options PMS_SYNAPTICS_TOUCHPAD # Enable support for Synaptics Touchpads
185 1.108 kiyohara genfb* at pci? dev ? function ?
186 1.120 kiyohara options WSFB_FAKE_VGA_FB
187 1.108 kiyohara vga* at pci? dev ? function ?
188 1.108 kiyohara wsdisplay* at vga? console ?
189 1.108 kiyohara wskbd* at pckbd? console ?
190 1.108 kiyohara wsmouse* at pms? mux 0
191 1.102 gdamore
192 1.108 kiyohara # make sure the console display is always wsdisplay0
193 1.108 kiyohara wsdisplay0 at wsemuldisplaydev? console 1
194 1.108 kiyohara wsdisplay* at wsemuldisplaydev?
195 1.1 sakamoto
196 1.5 sakamoto com0 at isa? port 0x3f8 irq 4 # standard PC serial ports
197 1.5 sakamoto com1 at isa? port 0x2f8 irq 3
198 1.108 kiyohara com2 at isa? port 0x380 irq 22
199 1.108 kiyohara com3 at isa? port 0x388 irq 23
200 1.46 lukem
201 1.1 sakamoto lpt0 at isa? port 0x378 irq 7 # standard PC parallel ports
202 1.1 sakamoto
203 1.108 kiyohara mcclock0 at isa? port 0x70 # time-of-day clock
204 1.108 kiyohara attimer0 at isa?
205 1.133 kiyohara #pcppi0 at isa?
206 1.133 kiyohara #spkr0 at pcppi?
207 1.108 kiyohara
208 1.124 kiyohara wss0 at isa? port 0x82c irq 30 drq 6 drq2 7 # Windows Sound System
209 1.8 sakamoto
210 1.108 kiyohara # Audio support
211 1.124 kiyohara audio* at audiobus?
212 1.67 jonathan
213 1.108 kiyohara # MIDI support
214 1.133 kiyohara #midi* at pcppi? # MIDI interface to the PC speaker
215 1.108 kiyohara
216 1.108 kiyohara # Joystick driver. Probe is a little strange; add only if you have one.
217 1.108 kiyohara joy0 at isa? port 0x201
218 1.67 jonathan
219 1.110 kiyohara siop* at pci? dev ? function ? # NCR 538XX SCSI controllers
220 1.110 kiyohara scsibus* at siop?
221 1.1 sakamoto
222 1.110 kiyohara sd* at scsibus? target ? lun ? # SCSI disk drives
223 1.1 sakamoto #st* at scsibus? target ? lun ? # SCSI tape drives
224 1.110 kiyohara cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
225 1.1 sakamoto #ch* at scsibus? target ? lun ? # SCSI autochangers
226 1.1 sakamoto #ss* at scsibus? target ? lun ? # SCSI scanners
227 1.1 sakamoto #uk* at scsibus? target ? lun ? # SCSI unknown
228 1.1 sakamoto
229 1.10 sakamoto fdc0 at isa? port 0x3f0 irq 6 drq 2 # standard PC floppy controllers
230 1.10 sakamoto fd0 at fdc? drive 1
231 1.1 sakamoto #fd* at fdc? drive ?
232 1.1 sakamoto
233 1.6 sakamoto wdc0 at isa? port 0x1f0 irq 14 # ST506, ESDI, and IDE controllers
234 1.108 kiyohara
235 1.66 lukem atabus* at ata?
236 1.65 bouyer wd* at atabus? drive ?
237 1.1 sakamoto
238 1.108 kiyohara # ATAPI bus support
239 1.108 kiyohara atapibus* at atapi?
240 1.108 kiyohara
241 1.108 kiyohara # ATAPI devices
242 1.108 kiyohara # flags have the same meaning as for IDE drives.
243 1.108 kiyohara cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
244 1.108 kiyohara #sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
245 1.108 kiyohara #st* at atapibus? drive ? flags 0x0000 # ATAPI tape drives
246 1.108 kiyohara #uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
247 1.108 kiyohara
248 1.108 kiyohara # Network devices
249 1.108 kiyohara ec0 at isa? port 0x250 iomem 0xd8000 irq 9 # 3Com 3c503 Ethernet
250 1.6 sakamoto ne0 at isa? port 0x300 irq 5 # NE[12]000 ethernet cards
251 1.108 kiyohara fxp* at pci? dev ? function ? # Intel EtherExpress PRO 10+/100B
252 1.108 kiyohara ne* at pci? dev ? function ? # NE2000-compatible Ethernet
253 1.108 kiyohara tlp* at pci? dev ? function ? # DECchip 21x4x and clones
254 1.108 kiyohara
255 1.108 kiyohara # MII/PHY support
256 1.108 kiyohara ukphy* at mii? phy ? # generic unknown PHYs
257 1.108 kiyohara
258 1.121 kiyohara # TV cards
259 1.121 kiyohara
260 1.121 kiyohara # Brooktree 848/849/878/879 based TV cards
261 1.121 kiyohara bktr* at pci? dev ? function ? # Brooktree video/audio capture/tuner
262 1.121 kiyohara
263 1.108 kiyohara
264 1.108 kiyohara # Pseudo-Devices
265 1.108 kiyohara
266 1.108 kiyohara pseudo-device crypto # /dev/crypto device
267 1.108 kiyohara # (disabled, requires generic softints)
268 1.108 kiyohara pseudo-device swcrypto # software crypto implementation
269 1.108 kiyohara
270 1.108 kiyohara # disk/mass storage pseudo-devices
271 1.133 kiyohara #pseudo-device bio # RAID control device driver
272 1.136 christos pseudo-device ccd # concatenated/striped disk devices
273 1.136 christos pseudo-device cgd # cryptographic disk devices
274 1.137 christos #pseudo-device raid # RAIDframe disk driver
275 1.133 kiyohara #options RAID_AUTOCONFIG # auto-configuration of RAID components
276 1.108 kiyohara # Options to enable various other RAIDframe RAID types.
277 1.108 kiyohara #options RF_INCLUDE_EVENODD=1
278 1.108 kiyohara #options RF_INCLUDE_RAID5_RS=1
279 1.108 kiyohara #options RF_INCLUDE_PARITYLOGGING=1
280 1.108 kiyohara #options RF_INCLUDE_CHAINDECLUSTER=1
281 1.108 kiyohara #options RF_INCLUDE_INTERDECLUSTER=1
282 1.108 kiyohara #options RF_INCLUDE_PARITY_DECLUSTERING=1
283 1.108 kiyohara #options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
284 1.117 pooka pseudo-device fss # file system snapshot device
285 1.108 kiyohara
286 1.125 hannken pseudo-device md # memory disk device
287 1.108 kiyohara pseudo-device vnd # disk-like interface to files
288 1.108 kiyohara options VND_COMPRESSION # compressed vnd(4)
289 1.108 kiyohara
290 1.108 kiyohara # network pseudo-devices
291 1.108 kiyohara pseudo-device bpfilter # packet filter
292 1.108 kiyohara #pseudo-device carp # Common Address Redundancy Protocol
293 1.108 kiyohara pseudo-device ipfilter # IP filter (firewall) and NAT
294 1.108 kiyohara pseudo-device loop # network loopback
295 1.108 kiyohara pseudo-device ppp # Point-to-Point Protocol
296 1.108 kiyohara pseudo-device pppoe # PPP over Ethernet (RFC 2516)
297 1.108 kiyohara pseudo-device sl # Serial Line IP
298 1.108 kiyohara #pseudo-device strip # Starmode Radio IP (Metricom)
299 1.108 kiyohara #pseudo-device irframetty # IrDA frame line discipline
300 1.108 kiyohara pseudo-device tap # virtual Ethernet
301 1.108 kiyohara pseudo-device tun # network tunneling over tty
302 1.108 kiyohara #pseudo-device gre # generic L3 over IP tunnel
303 1.108 kiyohara #pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
304 1.108 kiyohara #pseudo-device faith # IPv[46] tcp relay translation i/f
305 1.108 kiyohara #pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
306 1.108 kiyohara #pseudo-device vlan # IEEE 802.1q encapsulation
307 1.108 kiyohara #pseudo-device bridge # simple inter-network bridging
308 1.108 kiyohara #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too
309 1.108 kiyohara #pseudo-device agr # IEEE 802.3ad link aggregation
310 1.108 kiyohara #pseudo-device pf # PF packet filter
311 1.108 kiyohara #pseudo-device pflog # PF log if
312 1.108 kiyohara # srt is EXPERIMENTAL
313 1.108 kiyohara #pseudo-device srt # source-address-based routing
314 1.108 kiyohara
315 1.112 tls #
316 1.112 tls # accept filters
317 1.112 tls pseudo-device accf_data # "dataready" accept filter
318 1.112 tls pseudo-device accf_http # "httpready" accept filter
319 1.112 tls
320 1.108 kiyohara # miscellaneous pseudo-devices
321 1.108 kiyohara pseudo-device pty # pseudo-terminals
322 1.108 kiyohara pseudo-device sequencer 1 # MIDI sequencer
323 1.108 kiyohara #options RND_COM # use "com" randomness as well (BROKEN)
324 1.108 kiyohara pseudo-device clockctl # user control of clock subsystem
325 1.108 kiyohara pseudo-device ksyms # /dev/ksyms
326 1.108 kiyohara pseudo-device lockstat # lock profiling
327 1.108 kiyohara #pseudo-device bcsp # BlueCore Serial Protocol
328 1.108 kiyohara #pseudo-device btuart # Bluetooth HCI UART (H4)
329 1.108 kiyohara
330 1.108 kiyohara # a pseudo device needed for Coda # also needs CODA (above)
331 1.137 christos #pseudo-device vcoda # coda minicache <-> venus comm.
332 1.108 kiyohara
333 1.108 kiyohara # a pseudo device needed for SMBFS
334 1.108 kiyohara #pseudo-device nsmb # experimental - SMB requester
335 1.108 kiyohara
336 1.108 kiyohara # wscons pseudo-devices
337 1.108 kiyohara pseudo-device wsmux # mouse & keyboard multiplexor
338 1.108 kiyohara pseudo-device wsfont
339 1.1 sakamoto
340 1.108 kiyohara # pseudo audio device driver
341 1.108 kiyohara #pseudo-device pad
342 1.10 sakamoto
343 1.108 kiyohara # userland interface to drivers, including autoconf and properties retrieval
344 1.108 kiyohara #pseudo-device drvctl
345 1.1 sakamoto
346 1.108 kiyohara #options FILEASSOC # fileassoc(9) - required for Veriexec
347 1.108 kiyohara
348 1.108 kiyohara
349 1.108 kiyohara # Veriexec
350 1.108 kiyohara #
351 1.108 kiyohara # a pseudo device needed for veriexec
352 1.137 christos #pseudo-device veriexec
353 1.108 kiyohara #
354 1.108 kiyohara # Uncomment the fingerprint methods below that are desired. Note that
355 1.108 kiyohara # removing fingerprint methods will have almost no impact on the kernel
356 1.108 kiyohara # code size.
357 1.108 kiyohara #
358 1.108 kiyohara #options VERIFIED_EXEC_FP_RMD160
359 1.108 kiyohara #options VERIFIED_EXEC_FP_SHA256
360 1.108 kiyohara #options VERIFIED_EXEC_FP_SHA384
361 1.108 kiyohara #options VERIFIED_EXEC_FP_SHA512
362 1.108 kiyohara #options VERIFIED_EXEC_FP_SHA1
363 1.108 kiyohara #options VERIFIED_EXEC_FP_MD5
364 1.108 kiyohara
365 1.108 kiyohara #options PAX_MPROTECT=0 # PaX mprotect(2) restrictions
366 1.108 kiyohara #options PAX_ASLR=0 # PaX Address Space Layout Randomization
367