]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/conf/NOTES
Change to using my custom sparc64 binutils.
[FreeBSD/FreeBSD.git] / sys / conf / NOTES
1 #
2 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
3 #
4 # Lines that begin with 'device', 'options', 'machine', 'ident', 'maxusers',
5 # 'makeoptions', 'hints' etc go into the kernel configuration that you
6 # run config(8) with.
7 #
8 # Lines that begin with 'hints.' are NOT for config(8), they go into your
9 # hints file.  See /boot/device.hints and/or the 'hints' config(8) directive.
10 #
11 # Please use ``make LINT'' to create an old-style LINT file if you want to
12 # do kernel test-builds.
13 #
14 # $FreeBSD$
15 #
16
17 #
18 # This directive is mandatory; it defines the architecture to be
19 # configured for; in this case, the 386 family based IBM-PC and
20 # compatibles.
21 #
22 machine         i386
23
24 #
25 # This is the ``identification'' of the kernel.  Usually this should
26 # be the same as the name of your kernel.
27 #
28 ident           LINT
29
30 #
31 # The `maxusers' parameter controls the static sizing of a number of
32 # internal system tables by a formula defined in subr_param.c.
33 #
34 maxusers        10
35
36 #
37 # We want LINT to cover profiling as well
38 profile         2
39
40 #
41 # The `makeoptions' parameter allows variables to be passed to the
42 # generated Makefile in the build area.
43 #
44 # CONF_CFLAGS gives some extra compiler flags that are added to ${CFLAGS}
45 # after most other flags.  Here we use it to inhibit use of non-optimal
46 # gcc builtin functions (e.g., memcmp).
47 #
48 # DEBUG happens to be magic.
49 # The following is equivalent to 'config -g KERNELNAME' and creates
50 # 'kernel.debug' compiled with -g debugging as well as a normal
51 # 'kernel'.  Use 'make install.debug' to install the debug kernel
52 # but that isn't normally necessary as the debug symbols are not loaded
53 # by the kernel and are not useful there anyway.
54 #
55 # KERNEL can be overridden so that you can change the default name of your
56 # kernel.
57 #
58 # MODULES_OVERRIDE can be used to limit modules built to a specific list.
59 #
60 makeoptions     CONF_CFLAGS=-fno-builtin  #Don't allow use of memcmp, etc.
61 #makeoptions    DEBUG=-g                #Build kernel with gdb(1) debug symbols
62 #makeoptions    KERNEL=foo              #Build kernel "foo" and install "/foo"
63 # Only build Linux API modules and plus those parts of the sound system I need.
64 #makeoptions    MODULES_OVERRIDE="linux sound/snd sound/pcm sound/driver/maestro3"
65
66 #
67 # Certain applications can grow to be larger than the 512M limit
68 # that FreeBSD initially imposes.  Below are some options to
69 # allow that limit to grow to 1GB, and can be increased further
70 # with changing the parameters.  MAXDSIZ is the maximum that the
71 # limit can be set to, and the DFLDSIZ is the default value for
72 # the limit.  MAXSSIZ is the maximum that the stack limit can be
73 # set to.  You might want to set the default lower than the max, 
74 # and explicitly set the maximum with a shell command for processes
75 # that regularly exceed the limit like INND.
76 #
77 options         MAXDSIZ="(1024UL*1024*1024)"
78 options         MAXSSIZ="(128UL*1024*1024)"
79 options         DFLDSIZ="(1024UL*1024*1024)"
80
81 #
82 # BLKDEV_IOSIZE sets the default block size used in user block
83 # device I/O.  Note that this value will be overriden by the label
84 # when specifying a block device from a label with a non-0
85 # partition blocksize.  The default is PAGE_SIZE.
86 #
87 options         BLKDEV_IOSIZE=8192
88
89 # Options for the VM subsystem
90 options         PQ_CACHESIZE=512        # color for 512k/16k cache
91 options         KSTACK_PAGES=3          # number of 4k stack pages per process
92 # Deprecated options supported for backwards compatibility
93 #options        PQ_NOOPT                # No coloring
94 #options        PQ_LARGECACHE           # color for 512k/16k cache
95 #options        PQ_HUGECACHE            # color for 1024k/16k cache
96 #options        PQ_MEDIUMCACHE          # color for 256k/16k cache
97 #options        PQ_NORMALCACHE          # color for 64k/16k cache
98
99 # This allows you to actually store this configuration file into
100 # the kernel binary itself, where it may be later read by saying:
101 #    strings -n 3 /boot/kernel/kernel | sed -n 's/^___//p' > MYKERNEL
102 #
103 options         INCLUDE_CONFIG_FILE     # Include this file in kernel
104
105 #
106 # The root device and filesystem type can be compiled in;
107 # this provides a fallback option if the root device cannot
108 # be correctly guesst by the bootstrap code, or an override if
109 # the RB_DFLTROOT flag (-r) is specified when booting the kernel.
110 #
111 options         ROOTDEVNAME=\"ufs:da0s2e\"
112
113 \f
114 #####################################################################
115 # SMP OPTIONS:
116 #
117 # SMP enables building of a Symmetric MultiProcessor Kernel.
118 # APIC_IO enables the use of the IO APIC for Symmetric I/O.
119 #
120 # Notes:
121 #
122 #  An SMP kernel will ONLY run on an Intel MP spec. qualified motherboard.
123 #
124 #  Be sure to disable 'cpu I386_CPU' && 'cpu I486_CPU' for SMP kernels.
125 #
126 #  Check the 'Rogue SMP hardware' section to see if additional options
127 #   are required by your hardware.
128 #
129
130 # Mandatory:
131 options         SMP                     # Symmetric MultiProcessor Kernel
132 options         APIC_IO                 # Symmetric (APIC) I/O
133
134 #
135 # Rogue SMP hardware:
136 #
137
138 # Bridged PCI cards:
139 #
140 # The MP tables of most of the current generation MP motherboards
141 #  do NOT properly support bridged PCI cards.  To use one of these
142 #  cards you should refer to ???
143
144 # SMP Debugging Options:
145 #
146 # MUTEX_DEBUG enables various extra assertions in the mutex code.
147 # WITNESS enables the mutex witness code which detects deadlocks and cycles
148 #         during locking operations.
149 # WITNESS_DDB causes the witness code to drop into the kernel debugger if
150 #         a lock heirarchy violation occurs or if locks are held when going to
151 #         sleep.
152 # WITNESS_SKIPSPIN disables the witness checks on spin mutexes.
153 options         MUTEX_DEBUG
154 options         WITNESS
155 options         WITNESS_DDB
156 options         WITNESS_SKIPSPIN
157
158 \f
159 #####################################################################
160 # CPU OPTIONS
161
162 #
163 # You must specify at least one CPU (the one you intend to run on);
164 # deleting the specification for CPUs you don't need to use may make
165 # parts of the system run faster.
166 # I386_CPU is mutually exclusive with the other CPU types.
167 #
168 #cpu            I386_CPU                
169 cpu             I486_CPU
170 cpu             I586_CPU                # aka Pentium(tm)
171 cpu             I686_CPU                # aka Pentium Pro(tm)
172
173 #
174 # Options for CPU features.
175 #
176 # CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM
177 # BlueLightning CPU.  It works only with Cyrix FPU, and this option
178 # should not be used with Intel FPU.
179 #
180 # CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning
181 # CPU if CPU supports it. The default is double-clock mode on
182 # BlueLightning CPU box.
183 #
184 # CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1).
185 #
186 # CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct
187 # mapped mode.  Default is 2-way set associative mode.
188 #
189 # CPU_CYRIX_NO_LOCK enables weak locking for the entire address space
190 # of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1.
191 # Otherwise, the NO_LOCK bit of CCR1 is cleared.  (NOTE 3)
192 #
193 # CPU_DISABLE_5X86_LSSER disables load store serialize (i.e. enables
194 # reorder).  This option should not be used if you use memory mapped
195 # I/O device(s).
196 #
197 # CPU_ENABLE_SSE enables SSE/MMX2 instructions support.
198 #
199 # CPU_FASTER_5X86_FPU enables faster FPU exception handler.
200 #
201 # CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products
202 # for i386 machines.
203 #
204 # CPU_IORT defines I/O clock delay time (NOTE 1).  Default values of
205 # I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively
206 # (no clock delay).
207 #
208 # CPU_L2_LATENCY specifed the L2 cache latency value.  This option is used
209 # only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected.
210 # The default value is 5.
211 #
212 # CPU_LOOP_EN prevents flushing the prefetch buffer if the destination
213 # of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE
214 # 1).
215 #
216 # CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs.  This option
217 # is useful when you use Socket 8 to Socket 370 converter, because most Pentium
218 # Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs.
219 #
220 # CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1).
221 #
222 # CPU_SUSP_HLT enables suspend on HALT.  If this option is set, CPU
223 # enters suspend mode following execution of HALT instruction.
224 #
225 # CPU_UPGRADE_HW_CACHE eliminates unneeded cache flush instruction(s).
226 #
227 # CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD
228 # K5/K6/K6-2 cpus.
229 #
230 # CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache
231 # flush at hold state.
232 #
233 # CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs
234 # without cache flush at hold state, and (2) write-back CPU cache on
235 # Cyrix 6x86 whose revision < 2.7 (NOTE 2).
236 #
237 # NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY
238 # Pentiums) from locking up when a LOCK CMPXCHG8B instruction is
239 # executed.  This option is only needed if I586_CPU is also defined,
240 # and should be included for any non-Pentium CPU that defines it.
241 #
242 # NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors
243 # which indicates that the 15-16MB range is *definitely* not being
244 # occupied by an ISA memory hole.
245 #
246 # NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT,
247 # CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs.
248 # These options may crash your system.
249 #
250 # NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled
251 # in write-through mode when revision < 2.7.  If revision of Cyrix
252 # 6x86 >= 2.7, CPU cache is always enabled in write-back mode.
253 #
254 # NOTE 3: This option may cause failures for software that requires
255 # locked cycles in order to operate correctly.
256 #
257 options         CPU_BLUELIGHTNING_FPU_OP_CACHE
258 options         CPU_BLUELIGHTNING_3X
259 options         CPU_BTB_EN
260 options         CPU_DIRECT_MAPPED_CACHE
261 options         CPU_DISABLE_5X86_LSSER
262 options         CPU_ENABLE_SSE
263 options         CPU_FASTER_5X86_FPU
264 options         CPU_I486_ON_386
265 options         CPU_IORT
266 options         CPU_L2_LATENCY=5
267 options         CPU_LOOP_EN
268 options         CPU_PPRO2CELERON
269 options         CPU_RSTK_EN
270 options         CPU_SUSP_HLT
271 options         CPU_UPGRADE_HW_CACHE
272 options         CPU_WT_ALLOC
273 options         CYRIX_CACHE_WORKS
274 options         CYRIX_CACHE_REALLY_WORKS
275 #options        NO_F00F_HACK
276
277 #
278 # A math emulator is mandatory if you wish to run on hardware which
279 # does not have a floating-point processor.  Pick either the original,
280 # bogus (but freely-distributable) math emulator, or a much more
281 # fully-featured but GPL-licensed emulator taken from Linux.
282 #
283 options         MATH_EMULATE            #Support for x87 emulation
284 # Don't enable both of these in a real config.
285 options         GPL_MATH_EMULATE        #Support for x87 emulation via
286                                         #new math emulator
287
288 \f
289 #####################################################################
290 # COMPATIBILITY OPTIONS                                             
291
292 #
293 # Implement system calls compatible with 4.3BSD and older versions of
294 # FreeBSD.  You probably do NOT want to remove this as much current code
295 # still relies on the 4.3 emulation.
296 #
297 options         COMPAT_43
298
299 #
300 # These three options provide support for System V Interface
301 # Definition-style interprocess communication, in the form of shared
302 # memory, semaphores, and message queues, respectively.
303 #
304 options         SYSVSHM
305 options         SYSVSEM
306 options         SYSVMSG
307
308 \f
309 #####################################################################
310 # DEBUGGING OPTIONS
311
312 #
313 # Enable the kernel debugger.
314 #
315 options         DDB
316
317 #
318 # Don't drop into DDB for a panic. Intended for unattended operation
319 # where you may want to drop to DDB from the console, but still want
320 # the machine to recover from a panic
321 #
322 options         DDB_UNATTENDED
323
324 #
325 # If using GDB remote mode to debug the kernel, there's a non-standard
326 # extension to the remote protocol that can be used to use the serial
327 # port as both the debugging port and the system console.  It's non-
328 # standard and you're on your own if you enable it.  See also the
329 # "remotechat" variables in the FreeBSD specific version of gdb.
330 #
331 options         GDB_REMOTE_CHAT
332
333 #
334 # KTRACE enables the system-call tracing facility ktrace(2).
335 #
336 options         KTRACE                  #kernel tracing
337
338 #
339 # KTR is a kernel tracing mechanism imported from BSD/OS.  Currently it
340 # has no userland interface aside from a few sysctl's.  It is enabled with
341 # the KTR option.  The KTR_EXTEND option causes trace events to be generated
342 # as a string from snprintf rather than as a string and up to 5 argument
343 # pointers.  KTR_ENTRIES defines the number of entries in the circular trace
344 # buffer.  KTR_COMPILE defines the mask of events to compile into the kernel
345 # as defined by the KTR_* constants in <sys/ktr.h>.  KTR_MASK defines the
346 # initial value of the ktr_mask variable which determines at runtime what
347 # events to trace.  KTR_CPUMASK determines which CPU's log events, with
348 # bit X corresponding to cpu X.  KTR_VERBOSE enables dumping of KTR events
349 # to the console by default.  This functionality can be toggled via the
350 # debug.ktr_verbose sysctl and defaults to off if KTR_VERBOSE is not defined.
351 #
352 options         KTR
353 options         KTR_EXTEND
354 options         KTR_ENTRIES=1024
355 options         KTR_COMPILE="(KTR_INTR|KTR_PROC)"
356 options         KTR_MASK=KTR_INTR
357 options         KTR_CPUMASK=0x3
358 options         KTR_VERBOSE
359
360 #
361 # The INVARIANTS option is used in a number of source files to enable
362 # extra sanity checking of internal structures.  This support is not
363 # enabled by default because of the extra time it would take to check
364 # for these conditions, which can only occur as a result of
365 # programming errors.
366 #
367 options         INVARIANTS
368
369 #
370 # The INVARIANT_SUPPORT option makes us compile in support for
371 # verifying some of the internal structures.  It is a prerequisite for
372 # 'INVARIANTS', as enabling 'INVARIANTS' will make these functions be
373 # called.  The intent is that you can set 'INVARIANTS' for single
374 # source files (by changing the source file or specifying it on the
375 # command line) if you have 'INVARIANT_SUPPORT' enabled.  Also, if you
376 # wish to build a kernel module with 'INVARIANTS', then adding
377 # 'INVARIANT_SUPPORT' to your kernel will provide all the necessary
378 # infrastructure without the added overhead.
379 #
380 options         INVARIANT_SUPPORT
381
382 #
383 # The DIAGNOSTIC option is used to enable extra debugging information
384 # from some parts of the kernel.  As this makes everything more noisy,
385 # it is disabled by default.
386 #
387 options         DIAGNOSTIC
388
389 #
390 # REGRESSION causes optional kernel interfaces necessary only for regression
391 # testing to be enabled.  These interfaces may consitute security risks
392 # when enabled, as they permit processes to easily modify aspects of the
393 # run-time environment to reproduce unlikely or unusual (possibly normally
394 # impossible) scenarios.
395 #
396 options         REGRESSION
397
398 #
399 # RESTARTABLE_PANICS allows one to continue from a panic as if it were
400 # a call to the debugger via the Debugger() function instead.  It is only
401 # useful if a kernel debugger is present.  To restart from a panic, reset
402 # the panicstr variable to NULL and continue execution.  This option is
403 # for development use only and should NOT be used in production systems
404 # to "workaround" a panic.
405 #
406 #options        RESTARTABLE_PANICS
407
408 #
409 # PERFMON causes the driver for Pentium/Pentium Pro performance counters
410 # to be compiled.  See perfmon(4) for more information.
411 #
412 options         PERFMON
413
414
415 #
416 # This option let some drivers co-exist that can't co-exist in a running
417 # system.  This is used to be able to compile all kernel code in one go for
418 # quality assurance purposes (like this file, which the option takes it name
419 # from.)
420 #
421 options         COMPILING_LINT
422
423
424 # XXX - this doesn't belong here.
425 # Allow ordinary users to take the console - this is useful for X.
426 options         UCONSOLE
427
428 # XXX - this doesn't belong here either
429 #options        USERCONFIG              #boot -c editor
430 #options        INTRO_USERCONFIG        #imply -c and show intro screen
431 #options        VISUAL_USERCONFIG       #visual boot -c editor
432 \f
433 #####################################################################
434 # NETWORKING OPTIONS
435
436 #
437 # Protocol families:
438 #  Only the INET (Internet) family is officially supported in FreeBSD.
439 #  Source code for the NS (Xerox Network Service) is provided for amusement
440 #  value.
441 #
442 options         INET                    #Internet communications protocols
443 options         INET6                   #IPv6 communications protocols
444 options         IPSEC                   #IP security
445 options         IPSEC_ESP               #IP security (crypto; define w/ IPSEC)
446 options         IPSEC_DEBUG             #debug for IP security
447
448 options         IPX                     #IPX/SPX communications protocols
449 options         IPXIP                   #IPX in IP encapsulation (not available)
450 options         IPTUNNEL                #IP in IPX encapsulation (not available)
451
452 #options        NCP                     #NetWare Core protocol
453
454 options         NETATALK                #Appletalk communications protocols
455 options         NETATALKDEBUG           #Appletalk debugging
456
457 # These are currently broken but are shipped due to interest.
458 #options        NS                      #Xerox NS protocols
459 #options        NSIP                    #XNS over IP
460
461 # mchain library. It can be either loaded as KLD or compiled into kernel
462 options         LIBMCHAIN
463
464 # netgraph(4). Enable the base netgraph code with the NETGRAPH option.
465 # Individual node types can be enabled with the corresponding option
466 # listed below; however, this is not strictly necessary as netgraph
467 # will automatically load the corresponding KLD module if the node type
468 # is not already compiled into the kernel. Each type below has a
469 # corresponding man page, e.g., ng_async(8).
470 options         NETGRAPH                #netgraph(4) system
471 options         NETGRAPH_ASYNC
472 options         NETGRAPH_BPF
473 options         NETGRAPH_CISCO
474 options         NETGRAPH_ECHO
475 options         NETGRAPH_ETHER
476 options         NETGRAPH_FRAME_RELAY
477 options         NETGRAPH_GIF
478 options         NETGRAPH_GIF_DEMUX
479 options         NETGRAPH_HOLE
480 options         NETGRAPH_IFACE
481 options         NETGRAPH_IP_INPUT
482 options         NETGRAPH_KSOCKET
483 options         NETGRAPH_LMI
484 # MPPC compression requires proprietary files (not included)
485 #options        NETGRAPH_MPPC_COMPRESSION
486 options         NETGRAPH_MPPC_ENCRYPTION
487 options         NETGRAPH_ONE2MANY
488 options         NETGRAPH_PPP
489 options         NETGRAPH_PPPOE
490 options         NETGRAPH_PPTPGRE
491 options         NETGRAPH_RFC1490
492 options         NETGRAPH_SOCKET
493 options         NETGRAPH_SPLIT
494 options         NETGRAPH_TEE
495 options         NETGRAPH_TTY
496 options         NETGRAPH_UI
497 options         NETGRAPH_VJC
498
499 device          mn      # Munich32x/Falc54 Nx64kbit/sec cards.
500 device          lmc     # tulip based LanMedia WAN cards
501 device          musycc  # LMC/SBE LMC1504 quad T1/E1
502
503 #
504 # Network interfaces:
505 #  The `loop' device is MANDATORY when networking is enabled.
506 #  The `ether' device provides generic code to handle
507 #  Ethernets; it is MANDATORY when a Ethernet device driver is
508 #  configured or token-ring is enabled.
509 #  The `fddi' device provides generic code to support FDDI.
510 #  The `sppp' device serves a similar role for certain types
511 #  of synchronous PPP links (like `cx', `ar').
512 #  The `sl' device implements the Serial Line IP (SLIP) service.
513 #  The `ppp' device implements the Point-to-Point Protocol.
514 #  The `bpf' device enables the Berkeley Packet Filter.  Be
515 #  aware of the legal and administrative consequences of enabling this
516 #  option.  The number of devices determines the maximum number of
517 #  simultaneous BPF clients programs runnable.
518 #  The `disc' device implements a minimal network interface,
519 #  which throws away all packets sent and never receives any.  It is
520 #  included for testing purposes.  This shows up as the `ds' interface.
521 #  The `tap' device is a pty-like virtual Ethernet interface
522 #  The `tun' device implements (user-)ppp and nos-tun
523 #  The `gif' device implements IPv6 over IP4 tunneling,
524 #  IPv4 over IPv6 tunneling, IPv4 over IPv4 tunneling and
525 #  IPv6 over IPv6 tunneling.
526 #  The XBONEHACK option allows the same pair of addresses to be configured on
527 #  multiple gif interfaces.
528 #  The `faith' device captures packets sent to it and diverts them
529 #  to the IPv4/IPv6 translation daemon.
530 #  The `stf' device implements 6to4 encapsulation.
531 #  The `ef' device provides support for multiple ethernet frame types
532 #  specified via ETHER_* options. See ef(4) for details.
533 #
534 # The PPP_BSDCOMP option enables support for compress(1) style entire
535 # packet compression, the PPP_DEFLATE is for zlib/gzip style compression.
536 # PPP_FILTER enables code for filtering the ppp data stream and selecting
537 # events for resetting the demand dial activity timer - requires bpf.
538 # See pppd(8) for more details.
539 #
540 device          ether                   #Generic Ethernet
541 device          vlan                    #VLAN support
542 device          token                   #Generic TokenRing
543 device          fddi                    #Generic FDDI
544 device          sppp                    #Generic Synchronous PPP
545 device          loop    1               #Network loopback device
546 device          bpf                     #Berkeley packet filter
547 device          disc                    #Discard device (ds0, ds1, etc)
548 device          tap                     #Virtual Ethernet driver
549 device          tun                     #Tunnel driver (ppp(8), nos-tun(8))
550 device          sl                      #Serial Line IP
551 device          ppp     2               #Point-to-point protocol
552 options         PPP_BSDCOMP             #PPP BSD-compress support
553 options         PPP_DEFLATE             #PPP zlib/deflate/gzip support
554 options         PPP_FILTER              #enable bpf filtering (needs bpf)
555
556 device          ef                      # Multiple ethernet frames support
557 options         ETHER_II                # enable Ethernet_II frame
558 options         ETHER_8023              # enable Ethernet_802.3 (Novell) frame
559 options         ETHER_8022              # enable Ethernet_802.2 frame
560 options         ETHER_SNAP              # enable Ethernet_802.2/SNAP frame
561
562 # for IPv6
563 device          gif                     #IPv6 and IPv4 tunneling
564 options         XBONEHACK
565 device          faith                   #for IPv6 and IPv4 translation
566 device          stf                     #6to4 IPv6 over IPv4 encapsulation
567
568 #
569 # Internet family options:
570 #
571 # MROUTING enables the kernel multicast packet forwarder, which works
572 # with mrouted(8).
573 #
574 # IPFIREWALL enables support for IP firewall construction, in
575 # conjunction with the `ipfw' program.  IPFIREWALL_VERBOSE sends
576 # logged packets to the system logger.  IPFIREWALL_VERBOSE_LIMIT
577 # limits the number of times a matching entry can be logged.
578 #
579 # WARNING:  IPFIREWALL defaults to a policy of "deny ip from any to any"
580 # and if you do not add other rules during startup to allow access,
581 # YOU WILL LOCK YOURSELF OUT.  It is suggested that you set firewall_type=open
582 # in /etc/rc.conf when first enabling this feature, then refining the
583 # firewall rules in /etc/rc.firewall after you've tested that the new kernel
584 # feature works properly.
585 #
586 # IPFIREWALL_DEFAULT_TO_ACCEPT causes the default rule (at boot) to
587 # allow everything.  Use with care, if a cracker can crash your
588 # firewall machine, they can get to your protected machines.  However,
589 # if you are using it as an as-needed filter for specific problems as
590 # they arise, then this may be for you.  Changing the default to 'allow'
591 # means that you won't get stuck if the kernel and /sbin/ipfw binary get
592 # out of sync.
593 #
594 # IPDIVERT enables the divert IP sockets, used by ``ipfw divert''
595 #
596 # IPSTEALTH enables code to support stealth forwarding (i.e., forwarding
597 # packets without touching the ttl).  This can be useful to hide firewalls
598 # from traceroute and similar tools.
599 #
600 # TCPDEBUG enables code which keeps traces of the TCP state machine
601 # for sockets with the SO_DEBUG option set, which can then be examined
602 # using the trpt(8) utility.
603 #
604 options         MROUTING                # Multicast routing
605 options         IPFIREWALL              #firewall
606 options         IPFIREWALL_VERBOSE      #enable logging to syslogd(8)
607 options         IPFIREWALL_FORWARD      #enable transparent proxy support
608 options         IPFIREWALL_VERBOSE_LIMIT=100    #limit verbosity
609 options         IPFIREWALL_DEFAULT_TO_ACCEPT    #allow everything by default
610 options         IPV6FIREWALL            #firewall for IPv6
611 options         IPV6FIREWALL_VERBOSE
612 options         IPV6FIREWALL_VERBOSE_LIMIT=100
613 options         IPV6FIREWALL_DEFAULT_TO_ACCEPT
614 options         IPDIVERT                #divert sockets
615 options         IPFILTER                #ipfilter support
616 options         IPFILTER_LOG            #ipfilter logging
617 options         IPFILTER_DEFAULT_BLOCK  #block all packets by default
618 options         IPSTEALTH               #support for stealth forwarding
619 options         TCPDEBUG
620
621 # RANDOM_IP_ID causes the ID field in IP packets to be randomized
622 # instead of incremented by 1 with each packet generated.  This
623 # option closes a minor information leak which allows remote
624 # observers to determine the rate of packet generation on the
625 # machine by watching the counter.
626 options         RANDOM_IP_ID
627
628 # Statically Link in accept filters
629 options         ACCEPT_FILTER_DATA
630 options         ACCEPT_FILTER_HTTP
631
632 # TCP_DROP_SYNFIN adds support for ignoring TCP packets with SYN+FIN. This
633 # prevents nmap et al. from identifying the TCP/IP stack, but breaks support
634 # for RFC1644 extensions and is not recommended for web servers.
635 #
636 options         TCP_DROP_SYNFIN         #drop TCP packets with SYN+FIN
637
638 # DUMMYNET enables the "dummynet" bandwidth limiter. You need
639 # IPFIREWALL as well. See the dummynet(4) manpage for more info.
640 # BRIDGE enables bridging between ethernet cards -- see bridge(4).
641 # You can use IPFIREWALL and dummynet together with bridging.
642 options         DUMMYNET
643 options         BRIDGE
644
645 #
646 # ATM (HARP version) options
647 #
648 # ATM_CORE includes the base ATM functionality code.  This must be included
649 #       for ATM support.
650 #
651 # ATM_IP includes support for running IP over ATM.
652 #
653 # At least one (and usually only one) of the following signalling managers
654 # must be included (note that all signalling managers include PVC support):
655 # ATM_SIGPVC includes support for the PVC-only signalling manager `sigpvc'.
656 # ATM_SPANS includes support for the `spans' signalling manager, which runs
657 #       the FORE Systems's proprietary SPANS signalling protocol.
658 # ATM_UNI includes support for the `uni30' and `uni31' signalling managers,
659 #       which run the ATM Forum UNI 3.x signalling protocols.
660 #
661 # The `hea' driver provides support for the Efficient Networks, Inc.
662 # ENI-155p ATM PCI Adapter.
663 #
664 # The `hfa' driver provides support for the FORE Systems, Inc.
665 # PCA-200E ATM PCI Adapter.
666 #
667 options         ATM_CORE                #core ATM protocol family
668 options         ATM_IP                  #IP over ATM support
669 options         ATM_SIGPVC              #SIGPVC signalling manager
670 options         ATM_SPANS               #SPANS signalling manager
671 options         ATM_UNI                 #UNI signalling manager
672 device          hea                     #Efficient ENI-155p ATM PCI
673 device          hfa                     #FORE PCA-200E ATM PCI
674
675 \f
676 #####################################################################
677 # FILESYSTEM OPTIONS
678
679 #
680 # Only the root, /usr, and /tmp filesystems need be statically
681 # compiled; everything else will be automatically loaded at mount
682 # time.  (Exception: the UFS family--- FFS --- cannot
683 # currently be demand-loaded.)  Some people still prefer to statically
684 # compile other filesystems as well.
685 #
686 # NB: The NULL, PORTAL, UMAP and UNION filesystems are known to be
687 # buggy, and WILL panic your system if you attempt to do anything with
688 # them.  They are included here as an incentive for some enterprising
689 # soul to sit down and fix them.
690 #
691
692 # One of these is mandatory:
693 options         FFS                     #Fast filesystem
694 options         NFSCLIENT               #Network File System
695 options         NFSSERVER               #Network File System
696
697 # The rest are optional:
698 options         CD9660                  #ISO 9660 filesystem
699 options         FDESCFS                 #File descriptor filesystem
700 options         HPFS                    #OS/2 File system
701 options         MSDOSFS                 #MS DOS File System (FAT, FAT32)
702 options         NTFS                    #NT File System
703 options         NULLFS                  #NULL filesystem
704 #options        NWFS                    #NetWare filesystem
705 options         PORTALFS                #Portal filesystem
706 options         PROCFS                  #Process filesystem
707 options         PSEUDOFS                #Pseudo-filesystem framework
708 options         UMAPFS                  #UID map filesystem
709 options         UNIONFS                 #Union filesystem
710 # options       NODEVFS                 #disable devices filesystem
711 # The xFS_ROOT options REQUIRE the associated ``options xFS''
712 options         NFS_ROOT                #NFS usable as root device
713 # This code enables IFS, an FFS which exports inodes as the namespace.
714 # You can find details in src/sys/ufs/ifs/README .
715 options         IFS
716
717 # Soft updates is a technique for improving file system speed and
718 # making abrupt shutdown less risky.
719 #
720 options         SOFTUPDATES
721
722 # Extended attributes allow additional data to be associated with files,
723 # and is used for ACLs, Capabilities, and MAC labels.
724 # See src/sys/ufs/ufs/README.extattr for more information.
725 options         UFS_EXTATTR
726 options         UFS_EXTATTR_AUTOSTART
727
728 # Access Control List support for UFS filesystems.  The current ACL
729 # implementation requires extended attribute support, UFS_EXTATTR,
730 # for the underlying filesystem.
731 # See src/sys/ufs/ufs/README.acls for more information.
732 options         UFS_ACL
733
734 # Directory hashing improves the speed of operations on very large
735 # directories at the expense of some memory.
736 options         UFS_DIRHASH
737
738 # Make space in the kernel for a root filesystem on a md device.
739 # Define to the number of kilobytes to reserve for the filesystem.
740 options         MD_ROOT_SIZE=10
741
742 # Make the md device a potential root device, either with preloaded
743 # images of type mfs_root or md_root.
744 options         MD_ROOT
745
746 # Allow this many swap-devices.
747 #
748 # In order to manage swap, the system must reserve bitmap space that
749 # scales with the largest mounted swap device multiplied by NSWAPDEV, 
750 # irregardless of whether other swap devices exist or not.  So it
751 # is not a good idea to make this value too large.
752 options         NSWAPDEV=5
753
754 # Disk quotas are supported when this option is enabled.
755 options         QUOTA                   #enable disk quotas
756
757 # If you are running a machine just as a fileserver for PC and MAC
758 # users, using SAMBA or Netatalk, you may consider setting this option
759 # and keeping all those users' directories on a filesystem that is
760 # mounted with the suiddir option. This gives new files the same
761 # ownership as the directory (similar to group). It's a security hole
762 # if you let these users run programs, so confine it to file-servers
763 # (but it'll save you lots of headaches in those cases). Root owned
764 # directories are exempt and X bits are cleared. The suid bit must be
765 # set on the directory as well; see chmod(1) PC owners can't see/set
766 # ownerships so they keep getting their toes trodden on. This saves
767 # you all the support calls as the filesystem it's used on will act as
768 # they expect: "It's my dir so it must be my file".
769 #
770 options         SUIDDIR
771
772 # NFS options:
773 options         NFS_MINATTRTIMO=3       # VREG attrib cache timeout in sec
774 options         NFS_MAXATTRTIMO=60
775 options         NFS_MINDIRATTRTIMO=30   # VDIR attrib cache timeout in sec
776 options         NFS_MAXDIRATTRTIMO=60
777 options         NFS_GATHERDELAY=10      # Default write gather delay (msec)
778 options         NFS_UIDHASHSIZ=29       # Tune the size of nfssvc_sock with this
779 options         NFS_WDELAYHASHSIZ=16    # and with this
780 options         NFS_MUIDHASHSIZ=63      # Tune the size of nfsmount with this
781 options         NFS_DEBUG               # Enable NFS Debugging
782
783 # Coda stuff:
784 options         CODA                    #CODA filesystem.
785 device          vcoda   4               #coda minicache <-> venus comm.
786
787 #
788 # Add support for the EXT2FS filesystem of Linux fame.  Be a bit
789 # careful with this - the ext2fs code has a tendency to lag behind
790 # changes and not be exercised very much, so mounting read/write could
791 # be dangerous (and even mounting read only could result in panics.)
792 #
793 options         EXT2FS
794
795 # Use real implementations of the aio_* system calls.  There are numerous
796 # stability issues in the current aio code that make it unsuitable for
797 # inclusion on shell boxes.
798 options         VFS_AIO
799
800 # Enable the code UFS IO optimization through the VM system.  This allows
801 # use VM operations instead of copying operations when possible.
802
803 # Even with this enabled, actual use of the code is still controlled by the
804 # sysctl vfs.ioopt.  0 gives no optimization, 1 gives normal (use VM
805 # operations if a request happens to fit), 2 gives agressive optimization
806 # (the operations are split to do as much as possible through the VM system.)
807 #
808 # Enabling this will probably not give an overall speedup except for
809 # special workloads.
810 options         ENABLE_VFS_IOOPT
811
812 # Cryptographically secure random number generator; /dev/[u]random
813 device          random
814
815 \f
816 #####################################################################
817 # POSIX P1003.1B
818
819 # Real time extensions added in the 1993 Posix
820 # P1003_1B: Infrastructure
821 # _KPOSIX_PRIORITY_SCHEDULING: Build in _POSIX_PRIORITY_SCHEDULING
822 # _KPOSIX_VERSION:             Version kernel is built for
823
824 options         P1003_1B
825 options         _KPOSIX_PRIORITY_SCHEDULING
826 options         _KPOSIX_VERSION=199309L
827
828 \f
829 #####################################################################
830 # CLOCK OPTIONS
831
832 # The granularity of operation is controlled by the kernel option HZ whose
833 # default value (100) means a granularity of 10ms.  For an accurate simulation
834 # of high data rates it might be necessary to reduce the timer granularity to
835 # 1ms or less.  Consider, however, that some interfaces using programmed I/O
836 # may require a considerable time to output packets.  So, reducing the
837 # granularity too much might actually cause ticks to be missed thus reducing
838 # the accuracy of operation.
839
840 options         HZ=100
841
842 # Other clock options
843
844 options         CLK_CALIBRATION_LOOP
845 options         CLK_USE_I8254_CALIBRATION
846 options         CLK_USE_TSC_CALIBRATION
847
848 \f
849 #####################################################################
850 # SCSI DEVICES
851
852 # SCSI DEVICE CONFIGURATION
853
854 # The SCSI subsystem consists of the `base' SCSI code, a number of
855 # high-level SCSI device `type' drivers, and the low-level host-adapter
856 # device drivers.  The host adapters are listed in the ISA and PCI
857 # device configuration sections below.
858 #
859 # Beginning with FreeBSD 2.0.5 you can wire down your SCSI devices so
860 # that a given bus, target, and LUN always come on line as the same
861 # device unit.  In earlier versions the unit numbers were assigned
862 # in the order that the devices were probed on the SCSI bus.  This
863 # means that if you removed a disk drive, you may have had to rewrite
864 # your /etc/fstab file, and also that you had to be careful when adding
865 # a new disk as it may have been probed earlier and moved your device
866 # configuration around.
867
868 # This old behavior is maintained as the default behavior.  The unit
869 # assignment begins with the first non-wired down unit for a device
870 # type.  For example, if you wire a disk as "da3" then the first
871 # non-wired disk will be assigned da4.
872
873 # The syntax for wiring down devices is:
874
875 hint.scbus.0.at="ahc0"
876 hint.scbus.1.at="ahc1"
877 hint.scbus.1.bus="0"
878 hint.scbus.3.at="ahc2"
879 hint.scbus.3.bus="0"
880 hint.scbus.2.at="ahc2"
881 hint.scbus.2.bus="1"
882 hint.da.0.at="scbus0"
883 hint.da.0.target="0"
884 hint.da.0.unit="0"
885 hint.da.1.at="scbus3"
886 hint.da.1.target="1"
887 hint.da.2.at="scbus2"
888 hint.da.2.target="3"
889 hint.sa.1.at="scbus1"
890 hint.sa.1.target="6"
891
892 # "units" (SCSI logical unit number) that are not specified are
893 # treated as if specified as LUN 0.
894
895 # All SCSI devices allocate as many units as are required.
896
897 # The ch driver drives SCSI Media Changer ("jukebox") devices.
898 #
899 # The da driver drives SCSI Direct Access ("disk") and Optical Media
900 # ("WORM") devices.
901 #
902 # The sa driver drives SCSI Sequential Access ("tape") devices.
903 #
904 # The cd driver drives SCSI Read Only Direct Access ("cd") devices.
905 #
906 # The ses driver drives SCSI Envinronment Services ("ses") and
907 # SAF-TE ("SCSI Accessable Fault-Tolerant Enclosure") devices.
908 #
909 # The pt driver drives SCSI Processor devices.
910 #
911
912 # Target Mode support is provided here but also requires that a SIM
913 # (SCSI Host Adapter Driver) provide support as well.
914 #
915 # The targ driver provides target mode support as a Processor type device.
916 # It exists to give the minimal context necessary to respond to Inquiry
917 # commands. There is a sample user application that shows how the rest
918 # of the command support might be done in /usr/share/examples/scsi_target.
919 #
920 # The targbh driver provides target mode support and exists to respond
921 # to incoming commands that do not otherwise have a logical unit assigned
922 # to them.
923
924 # The "unknown" device (uk? in pre-2.0.5) is now part of the base SCSI
925 # configuration as the "pass" driver.
926
927 device          scbus           #base SCSI code
928 device          ch              #SCSI media changers
929 device          da              #SCSI direct access devices (aka disks)
930 device          sa              #SCSI tapes
931 device          cd              #SCSI CD-ROMs
932 device          ses             #SCSI Environmental Services (and SAF-TE)
933 device          pt              #SCSI processor 
934 device          targ            #SCSI Target Mode Code
935 device          targbh          #SCSI Target Mode Blackhole Device
936 device          pass            #CAM passthrough driver
937
938 # CAM OPTIONS:
939 # debugging options:
940 # -- NOTE --  If you specify one of the bus/target/lun options, you must
941 #             specify them all!
942 # CAMDEBUG: When defined enables debugging macros
943 # CAM_DEBUG_BUS:  Debug the given bus.  Use -1 to debug all busses.
944 # CAM_DEBUG_TARGET:  Debug the given target.  Use -1 to debug all targets.
945 # CAM_DEBUG_LUN:  Debug the given lun.  Use -1 to debug all luns.
946 # CAM_DEBUG_FLAGS:  OR together CAM_DEBUG_INFO, CAM_DEBUG_TRACE,
947 #                   CAM_DEBUG_SUBTRACE, and CAM_DEBUG_CDB
948 #
949 # CAM_MAX_HIGHPOWER: Maximum number of concurrent high power (start unit) cmds
950 # CAM_NEW_TRAN_CODE: this is the new transport layer code that will be switched
951 #                       to soon
952 # SCSI_NO_SENSE_STRINGS: When defined disables sense descriptions
953 # SCSI_NO_OP_STRINGS: When defined disables opcode descriptions
954 # SCSI_DELAY: The number of MILLISECONDS to freeze the SIM (scsi adapter)
955 #             queue after a bus reset, and the number of milliseconds to
956 #             freeze the device queue after a bus device reset.
957 options         CAMDEBUG
958 options         CAM_DEBUG_BUS=-1
959 options         CAM_DEBUG_TARGET=-1
960 options         CAM_DEBUG_LUN=-1
961 options         CAM_DEBUG_FLAGS="CAM_DEBUG_INFO|CAM_DEBUG_TRACE|CAM_DEBUG_CDB"
962 options         CAM_MAX_HIGHPOWER=4
963 options         SCSI_NO_SENSE_STRINGS
964 options         SCSI_NO_OP_STRINGS
965 options         SCSI_DELAY=8000 # Be pessimistic about Joe SCSI device
966
967 # Options for the CAM CDROM driver:
968 # CHANGER_MIN_BUSY_SECONDS: Guaranteed minimum time quantum for a changer LUN
969 # CHANGER_MAX_BUSY_SECONDS: Maximum time quantum per changer LUN, only
970 #                           enforced if there is I/O waiting for another LUN
971 # The compiled in defaults for these variables are 2 and 10 seconds,
972 # respectively.
973 #
974 # These can also be changed on the fly with the following sysctl variables:
975 # kern.cam.cd.changer.min_busy_seconds
976 # kern.cam.cd.changer.max_busy_seconds
977 #
978 options         CHANGER_MIN_BUSY_SECONDS=2
979 options         CHANGER_MAX_BUSY_SECONDS=10
980
981 # Options for the CAM sequential access driver:
982 # SA_IO_TIMEOUT: Timeout for read/write/wfm  operations, in minutes
983 # SA_SPACE_TIMEOUT: Timeout for space operations, in minutes
984 # SA_REWIND_TIMEOUT: Timeout for rewind operations, in minutes
985 # SA_ERASE_TIMEOUT: Timeout for erase operations, in minutes
986 # SA_1FM_AT_EOD: Default to model which only has a default one filemark at EOT.
987 options         SA_IO_TIMEOUT="(4)"
988 options         SA_SPACE_TIMEOUT="(60)"
989 options         SA_REWIND_TIMEOUT="(2*60)"
990 options         SA_ERASE_TIMEOUT="(4*60)"
991 options         SA_1FM_AT_EOD
992
993 # Optional timeout for the CAM processor target (pt) device
994 # This is specified in seconds.  The default is 60 seconds.
995 options         SCSI_PT_DEFAULT_TIMEOUT="60"
996
997 # Optional enable of doing SES passthrough on other devices (e.g., disks)
998 #
999 # Normally disabled because a lot of newer SCSI disks report themselves
1000 # as having SES capabilities, but this can then clot up attempts to build
1001 # build a topology with the SES device that's on the box these drives
1002 # are in....
1003 options         SES_ENABLE_PASSTHROUGH
1004
1005 \f
1006 #####################################################################
1007 # MISCELLANEOUS DEVICES AND OPTIONS
1008
1009 # The `pty' device usually turns out to be ``effectively mandatory'',
1010 # as it is required for `telnetd', `rlogind', `screen', `emacs', and
1011 # `xterm', among others.
1012
1013 device          pty             #Pseudo ttys
1014 device          speaker         #Play IBM BASIC-style noises out your speaker
1015 device          gzip            #Exec gzipped a.out's
1016 device          md              #Memory/malloc disk
1017 device          snp             #Snoop device - to look at pty/vty/etc..
1018 device          ccd             #Concatenated disk driver
1019
1020 # Configuring Vinum into the kernel is not necessary, since the kld
1021 # module gets started automatically when vinum(8) starts.  This
1022 # device is also untested.  Use at your own risk.
1023 #
1024 # The option VINUMDEBUG must match the value set in CFLAGS
1025 # in src/sbin/vinum/Makefile.  Failure to do so will result in
1026 # the following message from vinum(8):
1027 #
1028 # Can't get vinum config: Invalid argument
1029 #
1030 # see vinum(4) for more reasons not to use these options.
1031 device          vinum           #Vinum concat/mirror/raid driver
1032 options         VINUMDEBUG      #enable Vinum debugging hooks
1033
1034 # Kernel side iconv library
1035 options         LIBICONV
1036
1037 # Size of the kernel message buffer.  Should be N * pagesize.
1038 options         MSGBUF_SIZE=40960
1039
1040 \f
1041 #####################################################################
1042 # HARDWARE BUS CONFIGURATION
1043
1044 # ISA, EISA, MCA and PCI bus:
1045
1046 #
1047 # Mandatory ISA devices: isa, npx
1048 #
1049 device          isa
1050
1051 #
1052 # Options for `isa':
1053 #
1054 # AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
1055 # interrupt controller.  This saves about 0.7-1.25 usec for each interrupt.
1056 # This option breaks suspend/resume on some portables.
1057 #
1058 # AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A
1059 # interrupt controller.  This saves about 0.7-1.25 usec for each interrupt.
1060 # Automatic EOI is documented not to work for for the slave with the
1061 # original i8259A, but it works for some clones and some integrated
1062 # versions.
1063 #
1064 # MAXMEM specifies the amount of RAM on the machine; if this is not
1065 # specified, FreeBSD will first read the amount of memory from the CMOS
1066 # RAM, so the amount of memory will initially be limited to 64MB or 16MB
1067 # depending on the BIOS.  If the BIOS reports 64MB, a memory probe will
1068 # then attempt to detect the installed amount of RAM.  If this probe
1069 # fails to detect >64MB RAM you will have to use the MAXMEM option.
1070 # The amount is in kilobytes, so for a machine with 128MB of RAM, it would
1071 # be 131072 (128 * 1024).
1072 #
1073 # BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
1074 # reset the CPU for reboot.  This is needed on some systems with broken
1075 # keyboard controllers.
1076
1077 options         COMPAT_OLDISA   #Use ISA shims and glue for old drivers
1078 options         AUTO_EOI_1
1079 #options        AUTO_EOI_2
1080
1081 options         MAXMEM="(128*1024)"
1082 #options        BROKEN_KEYBOARD_RESET
1083
1084 # Enable support for the kernel PLL to use an external PPS signal,
1085 # under supervision of [x]ntpd(8)
1086 # More info in ntpd documentation: http://www.eecis.udel.edu/~ntp
1087
1088 options         PPS_SYNC
1089
1090 # If you see the "calcru: negative time of %ld usec for pid %d (%s)\n"
1091 # message you probably have some broken sw/hw which disables interrupts
1092 # for too long.  You can make the system more resistant to this by
1093 # choosing a high value for NTIMECOUNTER.  The default is 5, there
1094 # is no upper limit but more than a couple of hundred are not productive.
1095 # A better strategy may be to sysctl -w kern.timecounter.method=1
1096
1097 options         NTIMECOUNTER=20
1098
1099
1100 # EISA bus
1101 #
1102 # The EISA bus device is `eisa'.  It provides auto-detection and
1103 # configuration support for all devices on the EISA bus.
1104
1105 device          eisa
1106
1107 # By default, only 10 EISA slots are probed, since the slot numbers
1108 # above clash with the configuration address space of the PCI subsystem,
1109 # and the EISA probe is not very smart about this.  This is sufficient
1110 # for most machines, but in particular the HP NetServer LC series comes
1111 # with an onboard AIC7770 dual-channel SCSI controller on EISA slot #11,
1112 # thus you need to bump this figure to 12 for them.
1113 options         EISA_SLOTS=12
1114
1115 #
1116 # MCA bus:
1117 #
1118 # The MCA bus device is `mca'.  It provides auto-detection and
1119 # configuration support for all devices on the MCA bus.
1120 # No hints are required for MCA.
1121
1122 device          mca
1123
1124 #
1125 # PCI bus & PCI options:
1126 #
1127 # The main PCI bus device is `pci'.  It provides auto-detection and
1128 # configuration support for all devices on the PCI bus, using either
1129 # configuration mode defined in the PCI specification.
1130
1131 device          pci
1132
1133 #
1134 # AGP GART support
1135 device          agp
1136
1137 # PCI options
1138 #
1139 #Enable pci resources left off by a "lazy" BIOS:
1140 options         PCI_ENABLE_IO_MODES
1141 #options        PCI_QUIET       #quiets PCI code on chipset settings
1142
1143 \f
1144 #####################################################################
1145 # HARDWARE DEVICE CONFIGURATION
1146
1147 # EISA support is available for some device, so they can be auto-probed.
1148 # MicroChannel (MCA) support is available for some devices.
1149 # For ISA the required hints are listed.
1150 # EISA, MCA, PCI and pccard are self identifying buses, so no hints
1151 # are needed.
1152
1153 #
1154 # Mandatory devices:
1155 #
1156
1157 # The keyboard controller; it controls the keyboard and the PS/2 mouse.
1158 device          atkbdc  1
1159 hint.atkbdc.0.at="isa"
1160 hint.atkbdc.0.port="0x060"
1161
1162 # The AT keyboard
1163 device          atkbd
1164 hint.atkbd.0.at="atkbdc"
1165 hint.atkbd.0.irq="1"
1166
1167 # Options for atkbd:
1168 options         ATKBD_DFLT_KEYMAP       # specify the built-in keymap
1169 makeoptions     ATKBD_DFLT_KEYMAP="jp.106"
1170
1171 # These options are valid for other keyboard drivers as well.
1172 options         KBD_DISABLE_KEYMAP_LOAD # refuse to load a keymap
1173 options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
1174
1175 # `flags' for atkbd:
1176 #       0x01    Force detection of keyboard, else we always assume a keyboard
1177 #       0x02    Don't reset keyboard, useful for some newer ThinkPads
1178 #       0x03    Force detection and avoid reset, might help with certain
1179 #               dockingstations
1180 #       0x04    Old-style (XT) keyboard support, useful for older ThinkPads
1181
1182 # PS/2 mouse
1183 device          psm
1184 hint.psm.0.at="atkbdc"
1185 hint.psm.0.irq="12"
1186
1187 # Options for psm:
1188 options         PSM_HOOKRESUME          #hook the system resume event, useful
1189                                         #for some laptops
1190 options         PSM_RESETAFTERSUSPEND   #reset the device at the resume event
1191
1192 # The video card driver.
1193 device          vga
1194 hint.vga.0.at="isa"
1195
1196 # Options for vga:
1197 # Try the following option if the mouse pointer is not drawn correctly
1198 # or font does not seem to be loaded properly.  May cause flicker on
1199 # some systems.
1200 options         VGA_ALT_SEQACCESS
1201
1202 # If you can dispense with some vga driver features, you may want to
1203 # use the following options to save some memory.
1204 #options        VGA_NO_FONT_LOADING     # don't save/load font
1205 #options        VGA_NO_MODE_CHANGE      # don't change video modes
1206
1207 # Older video cards may require this option for proper operation.
1208 options         VGA_SLOW_IOACCESS       # do byte-wide i/o's to TS and GDC regs
1209
1210 # The following option probably won't work with the LCD displays.
1211 options         VGA_WIDTH90             # support 90 column modes
1212
1213 # To include support for VESA video modes
1214 options         VESA
1215
1216 options         FB_DEBUG                # Frame buffer debugging
1217 options         FB_INSTALL_CDEV         # install a CDEV entry in /dev
1218
1219 # Splash screen at start up!  Screen savers require this too.
1220 device          splash
1221
1222 # Various screen savers.
1223 device          apm_saver               # Requires APM
1224 device          blank_saver
1225 device          daemon_saver
1226 device          fade_saver
1227 device          fire_saver
1228 device          green_saver
1229 device          logo_saver
1230 device          rain_saver
1231 device          star_saver
1232 device          warp_saver
1233
1234 # The pcvt console driver (vt220 compatible).
1235 device          vt
1236 hint.vt.0.at="isa"
1237 options         XSERVER                 # support for running an X server on vt
1238 options         FAT_CURSOR              # start with block cursor
1239 # This PCVT option is for keyboards such as those used on really old ThinkPads
1240 options         PCVT_SCANSET=2
1241 # Other PCVT options are documented in pcvt(4).
1242 options         PCVT_24LINESDEF
1243 options         PCVT_CTRL_ALT_DEL
1244 options         PCVT_META_ESC
1245 options         PCVT_NSCREENS=9
1246 options         PCVT_PRETTYSCRNS
1247 options         PCVT_SCREENSAVER
1248 options         PCVT_USEKBDSEC
1249 options         PCVT_VT220KEYB
1250 options         PCVT_GREENSAVER
1251
1252 # The syscons console driver (sco color console compatible).
1253 device          sc      1
1254 hint.sc.0.at="isa"
1255 options         MAXCONS=16              # number of virtual consoles
1256 options         SC_ALT_MOUSE_IMAGE      # simplified mouse cursor in text mode
1257 options         SC_DFLT_FONT            # compile font in
1258 makeoptions     SC_DFLT_FONT=cp850
1259 options         SC_DISABLE_DDBKEY       # disable `debug' key
1260 options         SC_DISABLE_REBOOT       # disable reboot key sequence
1261 options         SC_HISTORY_SIZE=200     # number of history buffer lines
1262 options         SC_MOUSE_CHAR=0x3       # char code for text mode mouse cursor
1263 options         SC_PIXEL_MODE           # add support for the raster text mode
1264
1265 # The following options will let you change the default colors of syscons.
1266 options         SC_NORM_ATTR="(FG_GREEN|BG_BLACK)"
1267 options         SC_NORM_REV_ATTR="(FG_YELLOW|BG_GREEN)"
1268 options         SC_KERNEL_CONS_ATTR="(FG_RED|BG_BLACK)"
1269 options         SC_KERNEL_CONS_REV_ATTR="(FG_BLACK|BG_RED)"
1270
1271 # The following options will let you change the default behaviour of
1272 # cut-n-paste feature
1273 options         SC_CUT_SPACES2TABS      # convert leading spaces into tabs
1274 options         SC_CUT_SEPCHARS="\x20"  # set of characters that delimit words
1275                                         # (default is single space - "\x20")
1276
1277 # If you have a two button mouse, you may want to add the following option
1278 # to use the right button of the mouse to paste text.
1279 options         SC_TWOBUTTON_MOUSE
1280
1281 # You can selectively disable features in syscons.
1282 options         SC_NO_CUTPASTE
1283 options         SC_NO_FONT_LOADING
1284 options         SC_NO_HISTORY
1285 options         SC_NO_SYSMOUSE
1286
1287 # `flags' for sc
1288 #       0x80    Put the video card in the VESA 800x600 dots, 16 color mode
1289 #       0x100   Probe for a keyboard device periodically if one is not present
1290
1291 # 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create
1292 # the /dev/3dfx0 device to work with glide implementations. This should get
1293 # linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as
1294 # the tdfx DRI module from XFree86 and is completely unrelated.
1295 #
1296 # To enable Linuxulator support, one must also include COMPAT_LINUX in the
1297 # config as well, or you will not have the dependencies. The other option
1298 # is to load both as modules.
1299
1300 device          tdfx                    # Enable 3Dfx Voodoo support
1301 options         TDFX_LINUX              # Enable Linuxulator support
1302
1303 #
1304 # The Numeric Processing eXtension driver.  In addition to this, you
1305 # may configure a math emulator (see above).  If your machine has a
1306 # hardware FPU and the kernel configuration includes the npx device
1307 # *and* a math emulator compiled into the kernel, the hardware FPU
1308 # will be used, unless it is found to be broken or unless "flags" to
1309 # npx0 includes "0x08", which requests preference for the emulator.
1310 device          npx
1311 hint.npx.0.at="nexus"
1312 hint.npx.0.port="0x0F0"
1313 hint.npx.0.flags="0x0"
1314 hint.npx.0.irq="13"
1315
1316 #
1317 # `flags' for npx0:
1318 #       0x01    don't use the npx registers to optimize bcopy.
1319 #       0x02    don't use the npx registers to optimize bzero.
1320 #       0x04    don't use the npx registers to optimize copyin or copyout.
1321 #       0x08    use emulator even if hardware FPU is available.
1322 # The npx registers are normally used to optimize copying and zeroing when
1323 # all of the following conditions are satisfied:
1324 #       I586_CPU is an option
1325 #       the cpu is an i586 (perhaps not a Pentium)
1326 #       the probe for npx0 succeeds
1327 #       INT 16 exception handling works.
1328 # Then copying and zeroing using the npx registers is normally 30-100% faster.
1329 # The flags can be used to control cases where it doesn't work or is slower.
1330 # Setting them at boot time using userconfig works right (the optimizations
1331 # are not used until later in the bootstrap when npx0 is attached).
1332 # Flag 0x08 automatically disables the i586 optimized routines.
1333 #
1334
1335 #
1336 # ACPI support using the Intel ACPI Component Architecture reference
1337 # implementation.
1338 #
1339 # ACPI_DEBUG enables the use of the debug.acpi.level and debug.acpi.layer
1340 # kernel environment variables to select initial debugging levels for the
1341 # Intel ACPICA code.  (Note that the Intel code must also have USE_DEBUGGER
1342 # defined when it is built).
1343 #
1344 # Note that building ACPI into the kernel is deprecated; the module is
1345 # normally loaded automatically by the loader.
1346 #
1347 device          acpica
1348 options         ACPI_DEBUG
1349
1350 #
1351 # Optional devices:
1352 #
1353
1354 #
1355 # SCSI host adapters:
1356 #
1357 # adv: All Narrow SCSI bus AdvanSys controllers.
1358 # adw: Second Generation AdvanSys controllers including the ADV940UW.
1359 # aha: Adaptec 154x/1535/1640
1360 # ahb: Adaptec 174x EISA controllers
1361 # ahc: Adaptec 274x/284x/2910/293x/294x/394x/3950x/3960x/398X/4944/
1362 #      19160x/29160x, aic7770/aic78xx
1363 # aic: Adaptec 6260/6360, APA-1460 (PC Card), NEC PC9801-100 (C-BUS)
1364 # amd: Support for the AMD 53C974 SCSI host adapter chip as found on devices
1365 #      such as the Tekram DC-390(T).
1366 # bt:  Most Buslogic controllers: including BT-445, BT-54x, BT-64x, BT-74x,
1367 #      BT-75x, BT-946, BT-948, BT-956, BT-958, SDC3211B, SDC3211F, SDC3222F
1368 # isp: Qlogic ISP 1020, 1040 and 1040B PCI SCSI host adapters,
1369 #      ISP 1240 Dual Ultra SCSI, ISP 1080 and 1280 (Dual) Ultra2,
1370 #      ISP 12160 Ultra3 SCSI,
1371 #      Qlogic ISP 2100 and ISP 2200 1Gb Fibre Channel host adapters.
1372 #      Qlogic ISP 2300 and ISP 2312 2Gb Fibre Channel host adapters.
1373 # ispfw: Firmware module for Qlogic host adapters
1374 # ncr: NCR 53C810, 53C825 self-contained SCSI host adapters.
1375 # ncv: NCR 53C500 based SCSI host adapters.
1376 # nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
1377 # sym: Symbios/Logic 53C8XX family of PCI-SCSI I/O processors:
1378 #      53C810, 53C810A, 53C815, 53C825,  53C825A, 53C860, 53C875, 
1379 #      53C876, 53C885,  53C895, 53C895A, 53C896,  53C897, 53C1510D, 
1380 #      53C1010-33, 53C1010-66.
1381 # stg: TMC 18C30, 18C50 based SCSI host adapters.
1382 # wds: WD7000
1383
1384 #
1385 # Note that the order is important in order for Buslogic ISA/EISA cards to be
1386 # probed correctly.
1387 #
1388 device          bt
1389 hint.bt.0.at="isa"
1390 hint.bt.0.port="0x330"
1391 device          adv
1392 hint.adv.0.at="isa"
1393 device          adw
1394 device          aha
1395 hint.aha.0.at="isa"
1396 device          aic
1397 hint.aic.0.at="isa"
1398 device          ahb
1399 device          ahc
1400 device          amd
1401 device          isp
1402 hint.isp.0.disable="1"
1403 hint.isp.0.role="3"
1404 hint.isp.0.prefer_iomap="1"
1405 hint.isp.0.prefer_memmap="1"
1406 hint.isp.0.fwload_disable="1"
1407 hint.isp.0.ignore_nvram="1"
1408 hint.isp.0.fullduplex="1"
1409 hint.isp.0.topology="lport"
1410 hint.isp.0.topology="nport"
1411 hint.isp.0.topology="lport-only"
1412 hint.isp.0.topology="nport-only"
1413 # we can't get u_int64_t types, nor can we get strings if it's got
1414 # a leading 0x, hence this silly dodge.
1415 hint.isp.0.portwnn="w50000000aaaa0000"
1416 hint.isp.0.nodewnn="w50000000aaaa0001"
1417 device          ispfw
1418 device          ncr
1419 device          ncv
1420 device          nsp
1421 device          sym
1422 device          stg
1423 hint.stg.0.at="isa"
1424 hint.stg.0.port="0x140"
1425 hint.stg.0.port="11"
1426 device          wds
1427 hint.wds.0.at="isa"
1428 hint.wds.0.port="0x350"
1429 hint.wds.0.irq="11"
1430 hint.wds.0.drq="6"
1431
1432 # The aic7xxx driver will attempt to use memory mapped I/O for all PCI
1433 # controllers that have it configured only if this option is set. Unfortunately,
1434 # this doesn't work on some motherboards, which prevents it from being the
1435 # default.
1436 options         AHC_ALLOW_MEMIO
1437
1438 # Enable diagnostic sequencer code.
1439 options         AHC_DEBUG_SEQUENCER
1440
1441 # Dump the contents of the ahc controller configuration PROM.
1442 options         AHC_DUMP_EEPROM
1443
1444 # Bitmap of units to enable targetmode operations.
1445 options         AHC_TMODE_ENABLE
1446
1447 # The adw driver will attempt to use memory mapped I/O for all PCI
1448 # controllers that have it configured only if this option is set.
1449 options         ADW_ALLOW_MEMIO
1450
1451 # Options used in dev/isp/ (Qlogic SCSI/FC driver).
1452 #
1453 #       ISP_TARGET_MODE         -       enable target mode operation
1454 #
1455 #options        ISP_TARGET_MODE=1
1456
1457 # Options used in dev/sym/ (Symbios SCSI driver).
1458 #options        SYM_SETUP_LP_PROBE_MAP  #-Low Priority Probe Map (bits)
1459                                         # Allows the ncr to take precedence
1460                                         # 1 (1<<0) -> 810a, 860
1461                                         # 2 (1<<1) -> 825a, 875, 885, 895
1462                                         # 4 (1<<2) -> 895a, 896, 1510d 
1463 #options        SYM_SETUP_SCSI_DIFF     #-HVD support for 825a, 875, 885
1464                                         # disabled:0 (default), enabled:1
1465 #options        SYM_SETUP_PCI_PARITY    #-PCI parity checking
1466                                         # disabled:0, enabled:1 (default)
1467 #options        SYM_SETUP_MAX_LUN       #-Number of LUNs supported
1468                                         # default:8, range:[1..64]
1469
1470 # The 'asr' driver provides support for current DPT/Adaptec SCSI RAID
1471 # controllers (SmartRAID V and VI and later).
1472 # These controllers require the CAM infrastructure.
1473 #
1474 device          asr
1475
1476 # The 'dpt' driver provides support for old DPT controllers (http://www.dpt.com/).
1477 # These have hardware RAID-{0,1,5} support, and do multi-initiator I/O.
1478 # The DPT controllers are commonly re-licensed under other brand-names -
1479 # some controllers by Olivetti, Dec, HP, AT&T, SNI, AST, Alphatronic, NEC and
1480 # Compaq are actually DPT controllers.
1481 #
1482 # See src/sys/dev/dpt for debugging and other subtle options.
1483 #   DPT_MEASURE_PERFORMANCE Enables a set of (semi)invasive metrics. Various
1484 #                           instruments are enabled.  The tools in
1485 #                           /usr/sbin/dpt_* assume these to be enabled.
1486 #   DPT_HANDLE_TIMEOUTS     Normally device timeouts are handled by the DPT.
1487 #                           If you ant the driver to handle timeouts, enable
1488 #                           this option.  If your system is very busy, this
1489 #                           option will create more trouble than solve.
1490 #   DPT_TIMEOUT_FACTOR      Used to compute the excessive amount of time to
1491 #                           wait when timing out with the above option.
1492 #  DPT_DEBUG_xxxx           These are controllable from sys/dev/dpt/dpt.h
1493 #  DPT_LOST_IRQ             When enabled, will try, once per second, to catch
1494 #                           any interrupt that got lost.  Seems to help in some
1495 #                           DPT-firmware/Motherboard combinations.  Minimal
1496 #                           cost, great benefit.
1497 #  DPT_RESET_HBA            Make "reset" actually reset the controller
1498 #                           instead of fudging it.  Only enable this if you
1499 #                           are 100% certain you need it.
1500
1501 device          dpt
1502
1503 # DPT options
1504 #!CAM# options  DPT_MEASURE_PERFORMANCE
1505 #!CAM# options  DPT_HANDLE_TIMEOUTS
1506 options         DPT_TIMEOUT_FACTOR=4
1507 options         DPT_LOST_IRQ
1508 options         DPT_RESET_HBA
1509 options         DPT_ALLOW_MEMIO
1510
1511 #
1512 # Compaq "CISS" RAID controllers (SmartRAID 5* series)
1513 # These controllers have a SCSI-like interface, and require the
1514 # CAM infrastructure.
1515 #
1516 device          ciss
1517
1518 #
1519 # Mylex AcceleRAID and eXtremeRAID controllers with v6 and later
1520 # firmware.  These controllers have a SCSI-like interface, and require
1521 # the CAM infrastructure.
1522 #
1523 device          mly
1524
1525 #
1526 # Adaptec FSA RAID controllers, including integrated DELL controllers,
1527 # the Dell PERC 2/QC and the HP NetRAID-4M
1528 #
1529 # AAC_COMPAT_LINUX      Include code to support Linux-binary management
1530 #                       utilities (requires Linux compatibility
1531 #                       support).
1532 #
1533 device          aac
1534
1535 #
1536 # Compaq Smart RAID, Mylex DAC960 and AMI MegaRAID controllers.  Only
1537 # one entry is needed; the code will find and configure all supported
1538 # controllers.
1539 #
1540 device          ida             # Compaq Smart RAID
1541 device          mlx             # Mylex DAC960
1542 device          amr             # AMI MegaRAID
1543
1544 #
1545 # 3ware ATA RAID
1546 #
1547 device          twe             # 3ware ATA RAID
1548
1549 #
1550 # The 'ATA' driver supports all ATA and ATAPI devices, including PC Card
1551 # devices. You only need one "device ata" for it to find all
1552 # PCI and PC Card ATA/ATAPI devices on modern machines.
1553 device          ata
1554 device          atadisk         # ATA disk drives
1555 device          atapicd         # ATAPI CDROM drives
1556 device          atapifd         # ATAPI floppy drives
1557 device          atapist         # ATAPI tape drives
1558
1559 #
1560 # For older non-PCI, non-PnPBIOS systems, these are the hints lines to add:
1561 hint.ata.0.at="isa"
1562 hint.ata.0.port="0x1f0"
1563 hint.ata.0.irq="14"
1564 hint.ata.1.at="isa"
1565 hint.ata.1.port="0x170"
1566 hint.ata.1.irq="15"
1567
1568 #
1569 # The following options are valid on the ATA driver:
1570 #
1571 # ATA_STATIC_ID:        controller numbering is static ie depends on location
1572 #                       else the device numbers are dynamically allocated.
1573
1574 options         ATA_STATIC_ID
1575
1576 #
1577 # Standard floppy disk controllers and floppy tapes, supports
1578 # the Y-E DATA External FDD (PC Card)
1579 #
1580 device          fdc
1581 hint.fdc.0.at="isa"
1582 hint.fdc.0.port="0x3F0"
1583 hint.fdc.0.irq="6"
1584 hint.fdc.0.drq="2"
1585 #
1586 # FDC_DEBUG enables floppy debugging.  Since the debug output is huge, you
1587 # gotta turn it actually on by setting the variable fd_debug with DDB,
1588 # however.
1589 options         FDC_DEBUG
1590 #
1591 # Activate this line if you happen to have an Insight floppy tape.
1592 # Probing them proved to be dangerous for people with floppy disks only,
1593 # so it's "hidden" behind a flag:
1594 #hint.fdc.0.flags="1"
1595
1596 # Specify floppy devices
1597 hint.fd.0.at="fdc0"
1598 hint.fd.0.drive="0"
1599 hint.fd.1.at="fdc0"
1600 hint.fd.1.drive="1"
1601
1602 # M-systems DiskOnchip products see src/sys/contrib/dev/fla/README
1603 device          fla
1604 hint.fla.0.at="isa"
1605
1606 #
1607 # Other standard PC hardware:
1608 #
1609 # mse: Logitech and ATI InPort bus mouse ports
1610 # sio: serial ports (see sio(4)), including support for various
1611 #      PC Card devices, such as Modem and NICs (see etc/defaults/pccard.conf)
1612
1613 device          mse
1614 hint.mse.0.at="isa"
1615 hint.mse.0.port="0x23c"
1616 hint.mse.0.irq="5"
1617
1618 device          sio
1619 hint.sio.0.at="isa"
1620 hint.sio.0.port="0x3F8"
1621 hint.sio.0.flags="0x10"
1622 hint.sio.0.irq="4"
1623
1624 #
1625 # `flags' for serial drivers that support consoles (only for sio now):
1626 #       0x10    enable console support for this unit.  The other console flags
1627 #               are ignored unless this is set.  Enabling console support does
1628 #               not make the unit the preferred console - boot with -h or set
1629 #               the 0x20 flag for that.  Currently, at most one unit can have
1630 #               console support; the first one (in config file order) with
1631 #               this flag set is preferred.  Setting this flag for sio0 gives
1632 #               the old behaviour.
1633 #       0x20    force this unit to be the console (unless there is another
1634 #               higher priority console).  This replaces the COMCONSOLE option.
1635 #       0x40    reserve this unit for low level console operations.  Do not
1636 #               access the device in any normal way.
1637 #       0x80    use this port for serial line gdb support in ddb.
1638 #
1639 # PnP `flags' (set via userconfig using pnp x flags y)
1640 #       0x1     disable probing of this device.  Used to prevent your modem
1641 #               from being attached as a PnP modem.
1642 #
1643
1644 # Options for serial drivers that support consoles (only for sio now):
1645 options         BREAK_TO_DEBUGGER       #a BREAK on a comconsole goes to
1646                                         #DDB, if available.
1647 options         CONSPEED=115200         # speed for serial console
1648                                         # (default 9600)
1649
1650 # Solaris implements a new BREAK which is initiated by a character
1651 # sequence CR ~ ^b which is similar to a familiar pattern used on
1652 # Sun servers by the Remote Console.
1653 options         ALT_BREAK_TO_DEBUGGER
1654
1655 # Options for sio:
1656 options         COM_ESP                 #code for Hayes ESP
1657 options         COM_MULTIPORT           #code for some cards with shared IRQs
1658
1659 # Other flags for sio that aren't documented in the man page.
1660 #       0x20000 enable hardware RTS/CTS and larger FIFOs.  Only works for
1661 #               ST16650A-compatible UARTs.
1662
1663 #
1664 # Network interfaces:
1665 #
1666 # MII bus support is required for some PCI 10/100 ethernet NICs,
1667 # namely those which use MII-compliant transceivers or implement
1668 # tranceiver control interfaces that operate like an MII. Adding
1669 # "device miibus0" to the kernel config pulls in support for
1670 # the generic miibus API and all of the PHY drivers, including a
1671 # generic one for PHYs that aren't specifically handled by an
1672 # individual driver.
1673 device          miibus
1674
1675 # an:   Aironet 4500/4800 802.11 wireless adapters. Supports the PCMCIA,
1676 #       PCI and ISA varieties.
1677 # ar:   Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
1678 #       (requires sppp)
1679 # awi:  Support for IEEE 802.11 PC Card devices using the AMD Am79C930 and
1680 #       Harris (Intersil) Chipset with PCnetMobile firmware by AMD.
1681 # bge:  Support for gigabit ethernet adapters based on the Broadcom
1682 #       BCM570x familiy of controllers, including the 3Com 3c996-T,
1683 #       the SysKonnect SK-9D21 and SK-9D41, and the embedded gigE NICs
1684 #       on Dell PowerEdge 2550 servers.
1685 # cnw:  Xircom CNW/Netware Airsurfer PC Card adapter
1686 # cs:   IBM Etherjet and other Crystal Semi CS89x0-based adapters
1687 # cx:   Cronyx/Sigma multiport sync/async (with Cisco or PPP framing)
1688 # dc:   Support for PCI fast ethernet adapters based on the DEC/Intel 21143
1689 #       and various workalikes including:
1690 #       the ADMtek AL981 Comet and AN985 Centaur, the ASIX Electronics
1691 #       AX88140A and AX88141, the Davicom DM9100 and DM9102, the Lite-On
1692 #       82c168 and 82c169 PNIC, the Lite-On/Macronix LC82C115 PNIC II
1693 #       and the Macronix 98713/98713A/98715/98715A/98725 PMAC. This driver
1694 #       replaces the old al, ax, dm, pn and mx drivers.  List of brands:
1695 #       Digital DE500-BA, Kingston KNE100TX, D-Link DFE-570TX, SOHOware SFA110, 
1696 #       SVEC PN102-TX, CNet Pro110B, 120A, and 120B, Compex RL100-TX, 
1697 #       LinkSys LNE100TX, LNE100TX V2.0, Jaton XpressNet, Alfa Inc GFC2204,
1698 #       KNE110TX.
1699 # de:   Digital Equipment DC21040
1700 # ed:   Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
1701 #       HP PC Lan+, various PC Card devices (refer to etc/defauls/pccard.conf)
1702 #       (requires miibus)
1703 # el:   3Com 3C501 (slow!)
1704 # ep:   3Com 3C509, 3C529, 3C556, 3C562D, 3C563D, 3C572, 3C574X, 3C579, 3C589
1705 #       and PC Card devices using these chipsets.
1706 # ex:   Intel EtherExpress Pro/10 and other i82595-based adapters,
1707 #       Olicom Ethernet PC Card devices.
1708 # fe:   Fujitsu MB86960A/MB86965A Ethernet
1709 # fea:  DEC DEFEA EISA FDDI adapter
1710 # fpa:  Support for the Digital DEFPA PCI FDDI. `device fddi' is also needed.
1711 # fxp:  Intel EtherExpress Pro/100B
1712 #       (hint of prefer_iomap can be done to prefer I/O instead of Mem mapping)
1713 # gx:   Intel Pro/1000 Gigabit Ethernet (82542, 82543-F, 82543-T)
1714 # ie:   AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
1715 #       Intel EtherExpress
1716 # le:   Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100,
1717 #       DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422)
1718 # lnc:  Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and
1719 #       Am79C960)
1720 # lge:  Support for PCI gigabit ethernet adapters based on the Level 1
1721 #       LXT1001 NetCellerator chipset. This includes the D-Link DGE-500SX,
1722 #       SMC TigerCard 1000 (SMC9462SX), and some Addtron cards.
1723 # nge:  Support for PCI gigabit ethernet adapters based on the National
1724 #       Semiconductor DP83820 and DP83821 chipset. This includes the
1725 #       SMC EZ Card 1000 (SMC9462TX), D-Link DGE-500T, Asante FriendlyNet
1726 #       GigaNIX 1000TA and 1000TPC, the Addtron AEG320T, the LinkSys
1727 #       EG1032 and EG1064, the Surecom EP-320G-TX and the Netgear GA622T.
1728 # oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133
1729 #       (no hints needed).
1730 #       Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140,
1731 #       OC-3141, OC-3540, OC-3250
1732 # rdp:  RealTek RTL 8002-based pocket ethernet adapters
1733 # sbni: Granch SBNI12-xx ISA and PCI adapters
1734 # pcn:  Support for PCI fast ethernet adapters based on the AMD Am79c97x
1735 #       chipsets, including the PCnet/FAST, PCnet/FAST+, PCnet/PRO and
1736 #       PCnet/Home. These were previously handled by the lnc driver (and
1737 #       still will be if you leave this driver out of the kernel).
1738 # rl:   Support for PCI fast ethernet adapters based on the RealTek 8129/8139
1739 #       chipset.  Note that the RealTek driver defaults to using programmed
1740 #       I/O to do register accesses because memory mapped mode seems to cause
1741 #       severe lockups on SMP hardware.  This driver also supports the
1742 #       Accton EN1207D `Cheetah' adapter, which uses a chip called
1743 #       the MPX 5030/5038, which is either a RealTek in disguise or a
1744 #       RealTek workalike.  Note that the D-Link DFE-530TX+ uses the RealTek
1745 #       chipset and is supported by this driver, not the 'vr' driver.
1746 # sf:   Support for Adaptec Duralink PCI fast ethernet adapters based on the
1747 #       Adaptec AIC-6915 "starfire" controller.
1748 #       This includes dual and quad port cards, as well as one 100baseFX card.
1749 #       Most of these are 64-bit PCI devices, except for one single port
1750 #       card which is 32-bit.
1751 # sis:  Support for NICs based on the Silicon Integrated Systems SiS 900,
1752 #       SiS 7016 and NS DP83815 PCI fast ethernet controller chips.
1753 # sk:   Support for the SysKonnect SK-984x series PCI gigabit ethernet NICs.
1754 #       This includes the SK-9841 and SK-9842 single port cards (single mode
1755 #       and multimode fiber) and the SK-9843 and SK-9844 dual port cards
1756 #       (also single mode and multimode).
1757 #       The driver will autodetect the number of ports on the card and
1758 #       attach each one as a separate network interface.
1759 # sn:   Support for ISA and PC Card Ethernet devices using the
1760 #       SMC91C90/92/94/95 chips.
1761 # sr:   RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
1762 # ste:  Sundance Technologies ST201 PCI fast ethernet controller, includes
1763 #       the D-Link DFE-550TX.
1764 # ti:   Support for PCI gigabit ethernet NICs based on the Alteon Networks
1765 #       Tigon 1 and Tigon 2 chipsets.  This includes the Alteon AceNIC, the
1766 #       3Com 3c985, the Netgear GA620 and various others.  Note that you will
1767 #       probably want to bump up NMBCLUSTERS a lot to use this driver.
1768 # tl:   Support for the Texas Instruments TNETE100 series 'ThunderLAN'
1769 #       cards and integrated ethernet controllers.  This includes several
1770 #       Compaq Netelligent 10/100 cards and the built-in ethernet controllers
1771 #       in several Compaq Prosignia, Proliant and Deskpro systems.  It also
1772 #       supports several Olicom 10Mbps and 10/100 boards.
1773 # tx:   SMC 9432 TX, BTX and FTX cards. (SMC EtherPower II serie)
1774 # txp:  Support for 3Com 3cR990 cards with the "Typhoon" chipset
1775 # vr:   Support for various fast ethernet adapters based on the VIA
1776 #       Technologies VT3043 `Rhine I' and VT86C100A `Rhine II' chips,
1777 #       including the D-Link DFE530TX (see 'rl' for DFE530TX+), the Hawking 
1778 #       Technologies PN102TX, and the AOpen/Acer ALN-320.
1779 # vx:   3Com 3C590 and 3C595
1780 # wb:   Support for fast ethernet adapters based on the Winbond W89C840F chip.
1781 #       Note: this is not the same as the Winbond W89C940F, which is a
1782 #       NE2000 clone.
1783 # wl:   Lucent Wavelan (ISA card only).
1784 # wi:   Lucent WaveLAN/IEEE 802.11 PCMCIA adapters. Note: this supports both
1785 #       the PCMCIA and ISA cards: the ISA card is really a PCMCIA to ISA
1786 #       bridge with a PCMCIA adapter plugged into it.
1787 # xe:   Xircom/Intel EtherExpress Pro100/16 PC Card ethernet controller,
1788 #       Accton Fast EtherCard-16, Compaq Netelligent 10/100 PC Card,
1789 #       Toshiba 10/100 Ethernet PC Card, Xircom 16-bit Ethernet + Modem 56
1790 # xl:   Support for the 3Com 3c900, 3c905, 3c905B and 3c905C (Fast)
1791 #       Etherlink XL cards and integrated controllers.  This includes the
1792 #       integrated 3c905B-TX chips in certain Dell Optiplex and Dell
1793 #       Precision desktop machines and the integrated 3c905-TX chips
1794 #       in Dell Latitude laptop docking stations.
1795 #       Also supported: 3Com 3c980(C)-TX, 3Com 3cSOHO100-TX, 3Com 3c450-TX
1796
1797 # Order for ISA/EISA devices is important here
1798
1799 device          ar      1
1800 hint.ar.0.at="isa"
1801 hint.ar.0.port="0x300"
1802 hint.ar.0.irq="10"
1803 hint.ar.0.maddr="0xd0000"
1804 device          cs
1805 hint.cs.0.at="isa"
1806 hint.cs.0.port="0x300"
1807 device          cx      1
1808 hint.cx.0.at="isa"
1809 hint.cx.0.port="0x240"
1810 hint.cx.0.irq="15"
1811 hint.cx.0.drq="7"
1812 device          ed
1813 #options        ED_NO_MIIBUS            # Disable ed miibus support
1814 hint.ed.0.at="isa"
1815 hint.ed.0.port="0x280"
1816 hint.ed.0.irq="5"
1817 hint.ed.0.maddr="0xd8000"
1818 device          el      1
1819 hint.el.0.at="isa"
1820 hint.el.0.port="0x300"
1821 hint.el.0.irq="9"
1822 device          ep
1823 device          ex
1824 device          fe      1
1825 hint.fe.0.at="isa"
1826 hint.fe.0.port="0x300"
1827 device          fea
1828 device          ie      2
1829 hint.ie.0.at="isa"
1830 hint.ie.0.port="0x300"
1831 hint.ie.0.irq="5"
1832 hint.ie.0.maddr="0xd0000"
1833 hint.ie.1.at="isa"
1834 hint.ie.1.port="0x360"
1835 hint.ie.1.irq="7"
1836 hint.ie.1.maddr="0xd0000"
1837 device          le      1
1838 hint.le.0.at="isa"
1839 hint.le.0.port="0x300"
1840 hint.le.0.irq="5"
1841 hint.le.0.maddr="0xd0000"
1842 device          lnc     1
1843 hint.lnc.0.at="isa"
1844 hint.lnc.0.port="0x280"
1845 hint.lnc.0.irq="10"
1846 hint.lnc.0.drq="0"
1847 device          rdp     1
1848 hint.rdp.0.at="isa"
1849 hint.rdp.0.port="0x378"
1850 hint.rdp.0.irq="7"
1851 hint.rdp.0.flags="2"
1852 device          sbni    1
1853 hint.sbni.0.at="isa"
1854 hint.sbni.0.port="0x210"
1855 hint.sbni.0.irq="0xefdead"
1856 hint.sbni.0.flags="0"
1857 device          sr      1
1858 hint.sr.0.at="isa"
1859 hint.sr.0.port="0x300"
1860 hint.sr.0.irq="5"
1861 hint.sr.0.maddr="0xd0000"
1862 device          sn
1863 hint.sn.0.at="isa"
1864 hint.sn.0.port="0x300"
1865 hint.sn.0.irq="10"
1866 device          an
1867 device          awi
1868 device          cnw
1869 device          wi
1870 options         WLCACHE         # enables the signal-strength cache
1871 options         WLDEBUG         # enables verbose debugging output
1872 device          wl      1
1873 hint.wl.0.at="isa"
1874 hint.wl.0.port="0x300"
1875 device          xe
1876
1877 device          oltr
1878 options         OLTR_NO_BULLSEYE_MAC
1879 options         OLTR_NO_HAWKEYE_MAC
1880 options         OLTR_NO_TMS_MAC
1881 hint.oltr.0.at="isa"
1882
1883 # PCI Ethernet NICs that use the common MII bus controller code.
1884 device          dc              # DEC/Intel 21143 and various workalikes
1885 device          fxp             # Intel EtherExpress PRO/100B (82557, 82558)
1886 hint.fxp.0.prefer_iomap="0"
1887 device          rl              # RealTek 8129/8139
1888 device          pcn             # AMD Am79C97x PCI 10/100 NICs
1889 device          sf              # Adaptec AIC-6915 (``Starfire'')
1890 device          sis             # Silicon Integrated Systems SiS 900/SiS 7016
1891 device          ste             # Sundance ST201 (D-Link DFE-550TX)
1892 device          tl              # Texas Instruments ThunderLAN
1893 device          tx              # SMC EtherPower II (83c170 ``EPIC'')
1894 device          vr              # VIA Rhine, Rhine II
1895 device          wb              # Winbond W89C840F
1896 device          xl              # 3Com 3c90x (``Boomerang'', ``Cyclone'')
1897
1898 # PCI Ethernet NICs.
1899 device          de              # DEC/Intel DC21x4x (``Tulip'')
1900 device          txp             # 3Com 3cR990 (``Typhoon'')
1901 device          vx              # 3Com 3c590, 3c595 (``Vortex'')
1902
1903 # PCI Gigabit & FDDI NICs.
1904 device          bge
1905 device          gx
1906 device          lge
1907 device          nge
1908 device          sk
1909 device          ti
1910 device          fpa     1
1911
1912 #
1913 # ATM related options (Cranor version)
1914 # (note: this driver cannot be used with the HARP ATM stack)
1915 #
1916 # The `en' device provides support for Efficient Networks (ENI)
1917 # ENI-155 PCI midway cards, and the Adaptec 155Mbps PCI ATM cards (ANA-59x0).
1918 #
1919 # atm device provides generic atm functions and is required for
1920 # atm devices.
1921 # NATM enables the netnatm protocol family that can be used to
1922 # bypass TCP/IP.
1923 #
1924 # the current driver supports only PVC operations (no atm-arp, no multicast).
1925 # for more details, please read the original documents at
1926 # http://www.ccrc.wustl.edu/pub/chuck/tech/bsdatm/bsdatm.html
1927 #
1928 device          atm
1929 device          en
1930 options         NATM                    #native ATM
1931
1932 #
1933 # Audio drivers: `pcm', `sbc', `gusc', `pca'
1934 #
1935 # pcm: PCM audio through various sound cards.
1936 #
1937 # This has support for a large number of new audio cards, based on
1938 # CS423x, OPTi931, Yamaha OPL-SAx, and also for SB16, GusPnP.
1939 # For more information about this driver and supported cards,
1940 # see the pcm.4 man page.
1941 #
1942 # The flags of the device tells the device a bit more info about the
1943 # device that normally is obtained through the PnP interface.
1944 #       bit  2..0   secondary DMA channel;
1945 #       bit  4      set if the board uses two dma channels;
1946 #       bit 15..8   board type, overrides autodetection; leave it
1947 #                   zero if don't know what to put in (and you don't,
1948 #                   since this is unsupported at the moment...).
1949 #
1950 # This driver will use the new PnP code if it's available.
1951 #
1952 # pca: PCM audio through your PC speaker
1953 #
1954 # Supported cards include:
1955 # Creative SoundBlaster ISA PnP/non-PnP
1956 # Supports ESS and Avance ISA chips as well.
1957 # Gravis UltraSound ISA PnP/non-PnP
1958 # Crystal Semiconductor CS461x/428x PCI
1959 # Neomagic 256AV (ac97)
1960 # Most of the more common ISA/PnP sb/mss/ess compatable cards.
1961
1962 device          pcm
1963
1964 # For non-pnp sound cards with no bridge drivers only:
1965 hint.pcm.0.at="isa"
1966 hint.pcm.0.irq="10"
1967 hint.pcm.0.drq="1"
1968 hint.pcm.0.flags="0x0"
1969
1970 # For PnP/PCI sound cards, no hints are required.
1971
1972 #
1973 # midi: MIDI interfaces and synthesizers
1974 #
1975
1976 device          midi
1977
1978 # For non-pnp sound cards with no bridge drivers:
1979 hint.midi.0.at="isa"
1980 hint.midi.0.irq="5"
1981 hint.midi.0.flags="0x0"
1982
1983 # For serial ports (this example configures port 2):
1984 # TODO: implement generic tty-midi interface so that we can use
1985 #       other uarts.
1986 hint.midi.0.at="isa"
1987 hint.midi.0.port="0x2F8"
1988 hint.midi.0.irq="3"
1989
1990 #
1991 # seq: MIDI sequencer
1992 #
1993
1994 device          seq
1995
1996 # The bridge drivers for sound cards.  These can be separately configured
1997 # for providing services to the likes of new-midi.
1998 # When used with 'device pcm' they also provide pcm sound services.
1999 #
2000 # sbc:  Creative SoundBlaster ISA PnP/non-PnP
2001 #       Supports ESS and Avance ISA chips as well.
2002 # gusc: Gravis UltraSound ISA PnP/non-PnP
2003 # csa:  Crystal Semiconductor CS461x/428x PCI
2004
2005 # For non-PnP cards:
2006 device          sbc
2007 hint.sbc.0.at="isa"
2008 hint.sbc.0.port="0x220"
2009 hint.sbc.0.irq="5"
2010 hint.sbc.0.drq="1"
2011 hint.sbc.0.flags="0x15"
2012 device          gusc
2013 hint.gusc.0.at="isa"
2014 hint.gusc.0.port="0x220"
2015 hint.gusc.0.irq="5"
2016 hint.gusc.0.drq="1"
2017 hint.gusc.0.flags="0x13"
2018
2019 device          pca
2020 hint.pca.0.at="isa"
2021 hint.pca.0.port="0x040"
2022
2023 #
2024 # Miscellaneous hardware:
2025 #
2026 # mcd: Mitsumi CD-ROM using proprietary (non-ATAPI) interface
2027 # scd: Sony CD-ROM using proprietary (non-ATAPI) interface
2028 # matcd: Matsushita/Panasonic CD-ROM using proprietary (non-ATAPI) interface
2029 # wt: Wangtek and Archive QIC-02/QIC-36 tape drives
2030 # ctx: Cortex-I frame grabber
2031 # apm: Laptop Advanced Power Management (experimental)
2032 # pmtimer: Timer device driver for power management events (APM or ACPI)
2033 # spigot: The Creative Labs Video Spigot video-acquisition board
2034 # meteor: Matrox Meteor video capture board
2035 # bktr: Brooktree bt848/848a/849a/878/879 video capture and TV Tuner board
2036 # cy: Cyclades serial driver
2037 # dgb: Digiboard PC/Xi and PC/Xe series driver (ALPHA QUALITY!)
2038 # digi: Digiboard driver
2039 # gp:  National Instruments AT-GPIB and AT-GPIB/TNT board, PCMCIA-GPIB
2040 # asc: GI1904-based hand scanners, e.g. the Trust Amiscan Grey
2041 # gsc: Genius GS-4500 hand scanner.
2042 # joy: joystick (including IO DATA PCJOY PC Card joystick)
2043 # The LOUTB option specifies a slower outb() for debugging purposes. 
2044 # rc: RISCom/8 multiport card
2045 # rp: Comtrol Rocketport(ISA) - single card
2046 # tw: TW-523 power line interface for use with X-10 home control products
2047 # si: Specialix SI/XIO 4-32 port terminal multiplexor
2048 # spic: Sony Programmable I/O controller (VAIO notebooks)
2049 # stl: Stallion EasyIO and EasyConnection 8/32 (cd1400 based)
2050 # stli: Stallion EasyConnection 8/64, ONboard, Brumby (intelligent)
2051 # nmdm: nullmodem terminal driver (see nmdm(4))
2052
2053 # Notes on APM
2054 #  The flags takes the following meaning for apm0:
2055 #    0x0020  Statclock is broken.
2056 #  If apm is omitted, some systems require sysctl -w kern.timecounter.method=1
2057 #  for correct timekeeping.
2058
2059 # Notes on the spigot:
2060 #  The video spigot is at 0xad6.  This port address can not be changed.
2061 #  The irq values may only be 10, 11, or 15
2062 #  I/O memory is an 8kb region.  Possible values are:
2063 #    0a0000, 0a2000, ..., 0fffff, f00000, f02000, ..., ffffff
2064 #    The start address must be on an even boundary.
2065 #  Add the following option if you want to allow non-root users to be able
2066 #  to access the spigot.  This option is not secure because it allows users
2067 #  direct access to the I/O page.
2068 #       options SPIGOT_UNSECURE
2069
2070 # Notes on the Comtrol Rocketport driver:
2071 #
2072 # The exact values used for rp0 depend on how many boards you have
2073 # in the system.  The manufacturer's sample configs are listed as:
2074 #
2075 #               device  rp      # core driver support
2076 #
2077 #   Comtrol Rocketport ISA single card
2078 #               hints.rp.0.at="isa"
2079 #               hints.rp.0.port="0x280"
2080 #
2081 #   If instead you have two ISA cards, one installed at 0x100 and the
2082 #   second installed at 0x180, then you should add the following to
2083 #   your kernel probe hints:
2084 #               hints.rp.0.at="isa"
2085 #               hints.rp.0.port="0x100"
2086 #               hints.rp.1.at="isa"
2087 #               hints.rp.1.port="0x180"
2088 #
2089 #   For 4 ISA cards, it might be something like this:
2090 #               hints.rp.0.at="isa"
2091 #               hints.rp.0.port="0x180"
2092 #               hints.rp.1.at="isa"
2093 #               hints.rp.1.port="0x100"
2094 #               hints.rp.2.at="isa"
2095 #               hints.rp.2.port="0x340"
2096 #               hints.rp.3.at="isa"
2097 #               hints.rp.3.port="0x240"
2098 #
2099 #   And for PCI cards, you need no hints.
2100
2101 # Notes on the Digiboard driver:
2102 #
2103 # The following flag values have special meanings in dgb:
2104 #       0x01 - alternate layout of pins
2105 #       0x02 - use the windowed PC/Xe in 64K mode
2106
2107 # Notes on the Specialix SI/XIO driver:
2108 #  The host card is memory, not IO mapped.
2109 #  The Rev 1 host cards use a 64K chunk, on a 32K boundary.
2110 #  The Rev 2 host cards use a 32K chunk, on a 32K boundary.
2111 #  The cards can use an IRQ of 11, 12 or 15.
2112
2113 # Notes on the Sony Programmable I/O controller
2114 #  This is a temporary driver that should someday be replaced by something
2115 #  that hooks into the ACPI layer. The device is hooked to the PIIX4's
2116 #  General Device 10 decoder, which means you have to fiddle with PCI
2117 #  registers to map it in, even though it is otherwise treated here as
2118 #  an ISA device. At the moment, the driver polls, although the device
2119 #  is capable of generating interrupts. It largely undocumented.
2120 #  The port location in the hint is where you WANT the device to be
2121 #  mapped. 0x10a0 seems to be traditional. At the moment the jogdial
2122 #  is the only thing truly supported, but aparently a fair percentage
2123 #  of the Vaio extra features are controlled by this device.
2124
2125 # Notes on the Stallion stl and stli drivers:
2126 #  See src/i386/isa/README.stl for complete instructions.
2127 #  This is version 0.0.5alpha, unsupported by Stallion.
2128 #  The stl driver has a secondary IO port hard coded at 0x280.  You need
2129 #     to change src/i386/isa/stallion.c if you reconfigure this on the boards.
2130 #  The "flags" and "msize" settings on the stli driver depend on the board:
2131 #       EasyConnection 8/64 ISA:     flags 23         msize 0x1000
2132 #       EasyConnection 8/64 EISA:    flags 24         msize 0x10000
2133 #       EasyConnection 8/64 MCA:     flags 25         msize 0x1000
2134 #       ONboard ISA:                 flags 4          msize 0x10000
2135 #       ONboard EISA:                flags 7          msize 0x10000
2136 #       ONboard MCA:                 flags 3          msize 0x10000
2137 #       Brumby:                      flags 2          msize 0x4000
2138 #       Stallion:                    flags 1          msize 0x10000
2139
2140 device          mcd     1
2141 hint.mcd.0.at="isa"
2142 hint.mcd.0.port="0x300"
2143 hint.mcd.0.irq="10"
2144 # for the Sony CDU31/33A CDROM
2145 device          scd     1
2146 hint.scd.0.at="isa"
2147 hint.scd.0.port="0x230"
2148 # for the SoundBlaster 16 multicd - up to 4 devices
2149 device          matcd   1
2150 hint.matcd.0.at="isa"
2151 hint.matcd.0.port="0x230"
2152 device          wt      1
2153 hint.wt.0.at="isa"
2154 hint.wt.0.port="0x300"
2155 hint.wt.0.irq="5"
2156 hint.wt.0.drq="1"
2157 device          ctx     1
2158 hint.ctx.0.at="isa"
2159 hint.ctx.0.port="0x230"
2160 hint.ctx.0.maddr="0xd0000"
2161 device          spigot  1
2162 hint.spigot.0.at="isa"
2163 hint.spigot.0.port="0xad6"
2164 hint.spigot.0.irq="15"
2165 hint.spigot.0.maddr="0xee000"
2166 device          apm
2167 hint.apm.0.flags="0x20"
2168 device          pmtimer                 # Adjust system timer at wakeup time
2169 hint.pmtimer.0.at="isa"
2170 device          gp
2171 hint.gp.0.at="isa"
2172 hint.gp.0.port="0x2c0"
2173 device          gsc     1
2174 hint.gsc.0.at="isa"
2175 hint.gsc.0.port="0x270"
2176 hint.gsc.0.drq="3"
2177 device          joy                     # PnP aware, hints for nonpnp only
2178 hint.joy.0.at="isa"
2179 hint.joy.0.port="0x201"
2180 device          cy      1
2181 options         CY_PCI_FASTINTR         # Use with cy_pci unless irq is shared
2182 hint.cy.0.at="isa"
2183 hint.cy.0.irq="10"
2184 hint.cy.0.maddr="0xd4000"
2185 hint.cy.0.msize="0x2000"
2186 device          dgb     1
2187 options         NDGBPORTS=16            # Defaults to 16*NDGB
2188 hint.dgb.0.at="isa"
2189 hint.dgb.0.port="0x220"
2190 hint.dgb.0.maddr="0xfc000"
2191 device          digi
2192 hint.digi.0.at="isa"
2193 hint.digi.0.port="0x104"
2194 hint.digi.0.maddr="0xd0000"
2195 # BIOS & FEP/OS components of device digi.  Normally left as modules
2196 device          digi_CX
2197 device          digi_CX_PCI
2198 device          digi_EPCX
2199 device          digi_EPCX_PCI
2200 device          digi_Xe
2201 device          digi_Xem
2202 device          digi_Xr
2203 device          rc      1
2204 hint.rc.0.at="isa"
2205 hint.rc.0.port="0x220"
2206 hint.rc.0.irq="12"
2207 device          rp
2208 hint.rp.0.at="isa"
2209 hint.rp.0.port="0x280"
2210 # the port and irq for tw0 are fictitious
2211 device          tw      1
2212 hint.tw.0.at="isa"
2213 hint.tw.0.port="0x380"
2214 hint.tw.0.irq="11"
2215 device          si
2216 options         SI_DEBUG
2217 hint.si.0.at="isa"
2218 hint.si.0.maddr="0xd0000"
2219 hint.si.0.irq="12"
2220 device          asc     1
2221 hint.asc.0.at="isa"
2222 hint.asc.0.port="0x3EB"
2223 hint.asc.0.drq="3"
2224 hint.asc.0.irq="10"
2225 device          spic
2226 hint.spic.0.at="isa"
2227 hint.spic.0.port="0x10a0"
2228 device          stl
2229 hint.stl.0.at="isa"
2230 hint.stl.0.port="0x2a0"
2231 hint.stl.0.irq="10"
2232 device          stli
2233 hint.stli.0.at="isa"
2234 hint.stli.0.port="0x2a0"
2235 hint.stli.0.maddr="0xcc000"
2236 hint.stli.0.flags="23"
2237 hint.stli.0.msize="0x1000"
2238 # You are unlikely to have the hardware for loran <phk@FreeBSD.org>
2239 device          loran
2240 hint.loran.0.at="isa"
2241 hint.loran.0.irq="5"
2242 # HOT1 Xilinx 6200 card (http://www.vcc.com/)
2243 device          xrpu
2244 # nullmodem terminal driver
2245 device          nmdm
2246
2247 #
2248 # The `meteor' device is a PCI video capture board. It can also have the
2249 # following options:
2250 #   options METEOR_ALLOC_PAGES=xxx      preallocate kernel pages for data entry
2251 #       figure (ROWS*COLUMN*BYTES_PER_PIXEL*FRAME+PAGE_SIZE-1)/PAGE_SIZE
2252 #   options METEOR_DEALLOC_PAGES        remove all allocated pages on close(2)
2253 #   options METEOR_DEALLOC_ABOVE=xxx    remove all allocated pages above the
2254 #       specified amount. If this value is below the allocated amount no action
2255 #       taken
2256 #   options METEOR_SYSTEM_DEFAULT={METEOR_PAL|METEOR_NTSC|METEOR_SECAM}, used
2257 #       for initialization of fps routine when a signal is not present.
2258 #
2259 # The 'bktr' device is a PCI video capture device using the Brooktree
2260 # bt848/bt848a/bt849a/bt878/bt879 chipset. When used with a TV Tuner it forms a
2261 # TV card, eg Miro PC/TV, Hauppauge WinCast/TV WinTV, VideoLogic Captivator,
2262 # Intel Smart Video III, AverMedia, IMS Turbo, FlyVideo.
2263 #
2264 # options       OVERRIDE_CARD=xxx
2265 # options       OVERRIDE_TUNER=xxx
2266 # options       OVERRIDE_MSP=1
2267 # options       OVERRIDE_DBX=1
2268 # These options can be used to override the auto detection
2269 # The current values for xxx are found in src/sys/dev/bktr/bktr_card.h
2270 # Using sysctl(8) run-time overrides on a per-card basis can be made
2271 #
2272 # options       BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_PAL
2273 # or
2274 # options       BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_NTSC
2275 # Specifes the default video capture mode.
2276 # This is required for Dual Crystal (28&35Mhz) boards where PAL is used
2277 # to prevent hangs during initialisation.  eg VideoLogic Captivator PCI.
2278 #
2279 # options       BKTR_USE_PLL
2280 # PAL or SECAM users who have a 28Mhz crystal (and no 35Mhz crystal)
2281 # must enable PLL mode with this option. eg some new Bt878 cards.
2282 #
2283 # options       BKTR_GPIO_ACCESS
2284 # This enable IOCTLs which give user level access to the GPIO port.
2285 #
2286 # options       BKTR_NO_MSP_RESET
2287 # Prevents the MSP34xx reset. Good if you initialise the MSP in another OS first
2288 #
2289 # options       BKTR_430_FX_MODE
2290 # Switch Bt878/879 cards into Intel 430FX chipset compatibility mode.
2291 #
2292 # options       BKTR_SIS_VIA_MODE
2293 # Switch Bt878/879 cards into SIS/VIA chipset compatibility mode which is
2294 # needed for some old SiS and VIA chipset motherboards.
2295 # This also allows Bt878/879 chips to work on old OPTi (<1997) chipset
2296 # motherboards and motherboards with bad or incomplete PCI 2.1 support.
2297 # As a rough guess, old = before 1998
2298 #
2299
2300 device          meteor  1
2301
2302 # Brooktree driver has been ported to the new I2C framework. Thus,
2303 # you'll need to have the following 3 lines in the kernel config.
2304 #     device smbus
2305 #     device iicbus
2306 #     device iicbb
2307 # The iic and smb devices are only needed if you want to control other
2308 # I2C slaves connected to the external connector of some cards.
2309 #
2310 device          bktr    1
2311
2312 #
2313 # PC Card/PCMCIA
2314 # (OLDCARD)
2315 #
2316 # card: pccard slots
2317 # pcic: isa/pccard bridge
2318 device          pcic
2319 hint.pcic.0.at="isa"
2320 hint.pcic.1.at="isa"
2321 device          card
2322
2323 #
2324 # PC Card/PCMCIA and Cardbus
2325 # (NEWCARD)
2326 #
2327 # Note that NEWCARD and OLDCARD are incompatible.  Do not use both at the same
2328 # time.
2329 #
2330 # pccbb: isa/pccard and pci/cardbus bridge
2331 # pccard: pccard slots
2332 # cardbus: cardbus slots
2333 #device         pccbb
2334 #device         pccard
2335 #device         cardbus
2336
2337 # You may need to reset all pccards after resuming
2338 options         PCIC_RESUME_RESET       # reset after resume
2339
2340 #
2341 # Laptop/Notebook options:
2342 #
2343 # See also:
2344 #  apm under `Miscellaneous hardware'
2345 # above.
2346
2347 # For older notebooks that signal a powerfail condition (external
2348 # power supply dropped, or battery state low) by issuing an NMI:
2349
2350 options         POWERFAIL_NMI   # make it beep instead of panicing
2351
2352 #
2353 # SMB bus
2354 #
2355 # System Management Bus support is provided by the 'smbus' device.
2356 # Access to the SMBus device is via the 'smb' device (/dev/smb*),
2357 # which is a child of the 'smbus' device.
2358 #
2359 # Supported devices:
2360 # smb           standard io through /dev/smb*
2361 #
2362 # Supported SMB interfaces:
2363 # iicsmb        I2C to SMB bridge with any iicbus interface
2364 # bktr          brooktree848 I2C hardware interface
2365 # intpm         Intel PIIX4 Power Management Unit
2366 # alpm          Acer Aladdin-IV/V/Pro2 Power Management Unit
2367 # ichsmb        Intel ICH SMBus controller chips (82801AA, 82801AB, 82801BA)
2368 #
2369 device          smbus           # Bus support, required for smb below.
2370
2371 device          intpm
2372 device          alpm
2373 device          ichsmb
2374
2375 device          smb
2376
2377 #
2378 # I2C Bus
2379 #
2380 # Philips i2c bus support is provided by the `iicbus' device.
2381 #
2382 # Supported devices:
2383 # ic    i2c network interface
2384 # iic   i2c standard io
2385 # iicsmb i2c to smb bridge. Allow i2c i/o with smb commands.
2386 #
2387 # Supported interfaces:
2388 # pcf   Philips PCF8584 ISA-bus controller
2389 # bktr  brooktree848 I2C software interface
2390 #
2391 # Other:
2392 # iicbb generic I2C bit-banging code (needed by lpbb, bktr)
2393 #
2394 device          iicbus          # Bus support, required for ic/iic/iicsmb below.
2395 device          iicbb
2396
2397 device          ic
2398 device          iic
2399 device          iicsmb          # smb over i2c bridge
2400
2401 device          pcf
2402 hint.pcf.0.at="isa"
2403 hint.pcf.0.port="0x320"
2404 hint.pcf.0.irq="5"
2405
2406 #---------------------------------------------------------------------------
2407 # ISDN4BSD
2408 #
2409 # See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
2410 #
2411 # i4b passive ISDN cards support contains the following hardware drivers:
2412 #
2413 #       isic  - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
2414 #       iwic  - Winbond W6692 PCI bus ISDN S/T interface controller
2415 #       ifpi  - AVM Fritz!Card PCI driver
2416 #       ihfc  - Cologne Chip HFC ISA/ISA-PnP chipset driver
2417 #       ifpnp - AVM Fritz!Card PnP driver 
2418 #       itjc  - Siemens ISAC / TJNet Tiger300/320 chipset
2419 #
2420 # i4b active ISDN cards support contains the following hardware drivers:
2421 #
2422 #       iavc  - AVM B1 PCI, AVM B1 ISA, AVM T1
2423 #
2424 # Note that the ``options'' (if given) and ``device'' lines must BOTH
2425 # be uncommented to enable support for a given card !
2426 #
2427 # In addition to a hardware driver (and probably an option) the mandatory
2428 # ISDN protocol stack devices and the mandatory support device must be 
2429 # enabled as well as one or more devices from the optional devices section.
2430 #
2431 #---------------------------------------------------------------------------
2432 #       isic driver (Siemens/Infineon chipsets)
2433 #
2434 device  isic
2435 #
2436 # ISA bus non-PnP Cards:
2437 # ----------------------
2438 #
2439 # Teles S0/8 or Niccy 1008
2440 options         TEL_S0_8
2441 hint.isic.0.at="isa"
2442 hint.isic.0.maddr="0xd0000"
2443 hint.isic.0.irq="5"
2444 hint.isic.0.flags="1"
2445 #
2446 # Teles S0/16 or Creatix ISDN-S0 or Niccy 1016
2447 options         TEL_S0_16
2448 hint.isic.0.at="isa"
2449 hint.isic.0.port="0xd80"
2450 hint.isic.0.maddr="0xd0000"
2451 hint.isic.0.irq="5"
2452 hint.isic.0.flags="2"
2453 #
2454 # Teles S0/16.3
2455 options         TEL_S0_16_3
2456 hint.isic.0.at="isa"
2457 hint.isic.0.port="0xd80"
2458 hint.isic.0.irq="5"
2459 hint.isic.0.flags="3"
2460 #
2461 # AVM A1 or AVM Fritz!Card
2462 options         AVM_A1
2463 hint.isic.0.at="isa"
2464 hint.isic.0.port="0x340"
2465 hint.isic.0.irq="5"
2466 hint.isic.0.flags="4"
2467 #
2468 # USRobotics Sportster ISDN TA intern
2469 options         USR_STI
2470 hint.isic.0.at="isa"
2471 hint.isic.0.port="0x268"
2472 hint.isic.0.irq="5"
2473 hint.isic.0.flags="7"
2474 #
2475 # ITK ix1 Micro ( < V.3, non-PnP version )
2476 options         ITKIX1
2477 hint.isic.0.at="isa"
2478 hint.isic.0.port="0x398"
2479 hint.isic.0.irq="10"
2480 hint.isic.0.flags="18"
2481 #
2482 # ELSA PCC-16
2483 options         ELSA_PCC16
2484 hint.isic.0.at="isa"
2485 hint.isic.0.port="0x360"
2486 hint.isic.0.irq="10"
2487 hint.isic.0.flags="20"
2488 #
2489 # ISA bus PnP Cards:
2490 # ------------------
2491 #
2492 # Teles S0/16.3 PnP
2493 options         TEL_S0_16_3_P
2494 #
2495 # Creatix ISDN-S0 P&P
2496 options         CRTX_S0_P
2497 #
2498 # Dr. Neuhaus Niccy Go@
2499 options         DRN_NGO
2500 #
2501 # Sedlbauer Win Speed
2502 options         SEDLBAUER
2503 #
2504 # Dynalink IS64PH
2505 options         DYNALINK 
2506 #
2507 # ELSA QuickStep 1000pro ISA
2508 options         ELSA_QS1ISA
2509 #
2510 # Siemens I-Surf 2.0
2511 options         SIEMENS_ISURF2
2512 #
2513 # Asuscom ISDNlink 128K ISA
2514 options         ASUSCOM_IPAC
2515 #
2516 # Eicon Diehl DIVA 2.0 and 2.02
2517 options         EICON_DIVA
2518 #
2519 # Compaq Microcom 610 ISDN card (Compaq series PSB2222I)
2520 options         COMPAQ_M610
2521 #
2522 # PCI bus Cards:
2523 # --------------
2524 #
2525 # ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
2526 options         ELSA_QS1PCI
2527 #
2528 #
2529 #---------------------------------------------------------------------------
2530 #       ifpnp driver for AVM Fritz!Card PnP
2531 #
2532 # AVM Fritz!Card PnP
2533 device ifpnp
2534 #
2535 #---------------------------------------------------------------------------
2536 #       ihfc driver for Cologne Chip ISA chipsets (experimental!)
2537 #
2538 # Teles 16.3c ISA PnP
2539 # AcerISDN P10 ISA PnP
2540 # TELEINT ISDN SPEED No.1
2541 device ihfc
2542 #
2543 #---------------------------------------------------------------------------
2544 #       ifpi driver for AVM Fritz!Card PCI
2545 #
2546 # AVM Fritz!Card PCI
2547 device  ifpi
2548 #
2549 #---------------------------------------------------------------------------
2550 #       iwic driver for Winbond W6692 chipset
2551 #
2552 # ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
2553 device  iwic
2554 #
2555 #---------------------------------------------------------------------------
2556 #       itjc driver for Simens ISAC / TJNet Tiger300/320 chipset
2557 #
2558 # Traverse Technologies NETjet-S
2559 # Teles PCI-TJ
2560 device  itjc
2561 #
2562 #---------------------------------------------------------------------------
2563 #       iavc driver (AVM active cards, needs i4bcapi driver!)
2564 #
2565 device  iavc
2566 #
2567 # AVM B1 ISA bus (PnP mode not supported!)
2568 # ----------------------------------------
2569 hint.iavc.0.at="isa"
2570 hint.iavc.0.port="0x150"
2571 hint.iavc.0.irq="5"
2572 #
2573 #---------------------------------------------------------------------------
2574 #       ISDN Protocol Stack - mandatory for all hardware drivers
2575 #
2576 # Q.921 / layer 2 - i4b passive cards D channel handling
2577 device          "i4bq921"
2578 #
2579 # Q.931 / layer 3 - i4b passive cards D channel handling
2580 device          "i4bq931"
2581 #
2582 # layer 4 - i4b common passive and active card handling
2583 device          "i4b"
2584 #
2585 #---------------------------------------------------------------------------
2586 #       ISDN devices - mandatory for all hardware drivers
2587 #
2588 # userland driver to do ISDN tracing (for passive cards only)
2589 device          "i4btrc"        4
2590 #
2591 # userland driver to control the whole thing
2592 device          "i4bctl"
2593 #
2594 #---------------------------------------------------------------------------
2595 #       ISDN devices - optional
2596 #
2597 # userland driver for access to raw B channel
2598 device          "i4brbch"       4
2599 #
2600 # userland driver for telephony
2601 device          "i4btel"        2
2602 #
2603 # network driver for IP over raw HDLC ISDN
2604 device          "i4bipr"        4
2605 # enable VJ header compression detection for ipr i/f
2606 options         IPR_VJ
2607 # enable logging of the first n IP packets to isdnd (n=32 here)
2608 options         IPR_LOG=32
2609 #
2610 # network driver for sync PPP over ISDN; requires an equivalent
2611 # number of sppp device to be configured
2612 device          "i4bisppp"      4
2613 #
2614 # B-channel interface to the netgraph subsystem
2615 device          "i4bing"        2
2616 #
2617 # CAPI driver needed for active ISDN cards (see iavc driver above)
2618 device          "i4bcapi"
2619 #
2620 #---------------------------------------------------------------------------
2621
2622 # Parallel-Port Bus
2623 #
2624 # Parallel port bus support is provided by the `ppbus' device.
2625 # Multiple devices may be attached to the parallel port, devices
2626 # are automatically probed and attached when found.
2627 #
2628 # Supported devices:
2629 # vpo   Iomega Zip Drive
2630 #       Requires SCSI disk support ('scbus' and 'da'), best
2631 #       performance is achieved with ports in EPP 1.9 mode.
2632 # lpt   Parallel Printer
2633 # plip  Parallel network interface
2634 # ppi   General-purpose I/O ("Geek Port") + IEEE1284 I/O
2635 # pps   Pulse per second Timing Interface
2636 # lpbb  Philips official parallel port I2C bit-banging interface
2637 #
2638 # Supported interfaces:
2639 # ppc   ISA-bus parallel port interfaces.
2640 #
2641
2642 options         PPC_PROBE_CHIPSET # Enable chipset specific detection
2643                                   # (see flags in ppc(4))
2644 options         DEBUG_1284      # IEEE1284 signaling protocol debug
2645 options         PERIPH_1284     # Makes your computer act as a IEEE1284
2646                                 # compliant peripheral
2647 options         DONTPROBE_1284  # Avoid boot detection of PnP parallel devices
2648 options         VP0_DEBUG       # ZIP/ZIP+ debug
2649 options         LPT_DEBUG       # Printer driver debug
2650 options         PPC_DEBUG       # Parallel chipset level debug
2651 options         PLIP_DEBUG      # Parallel network IP interface debug
2652 options         PCFCLOCK_VERBOSE         # Verbose pcfclock driver
2653 options         PCFCLOCK_MAX_RETRIES=5   # Maximum read tries (default 10)
2654
2655 device          ppc
2656 hint.ppc.0.at="isa"
2657 hint.ppc.0.irq="7"
2658 device          ppbus
2659 device          vpo
2660 device          lpt
2661 device          plip
2662 device          ppi
2663 device          pps
2664 device          lpbb
2665 device          pcfclock
2666
2667 # Kernel BOOTP support
2668
2669 options         BOOTP           # Use BOOTP to obtain IP address/hostname
2670 options         BOOTP_NFSROOT   # NFS mount root filesystem using BOOTP info
2671 options         BOOTP_NFSV3     # Use NFS v3 to NFS mount root
2672 options         BOOTP_COMPAT    # Workaround for broken bootp daemons.
2673 options         BOOTP_WIRED_TO=fxp0 # Use interface fxp0 for BOOTP
2674
2675 #
2676 # Add tie-ins for a hardware watchdog.  This only enable the hooks;
2677 # the user must still supply the actual driver.
2678 #
2679 options         HW_WDOG
2680
2681 #
2682 # Set the number of PV entries per process.  Increasing this can
2683 # stop panics related to heavy use of shared memory. However, that can
2684 # (combined with large amounts of physical memory) cause panics at
2685 # boot time due the kernel running out of VM space.
2686 #
2687 # If you're tweaking this, you might also want to increase the sysctls
2688 # "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
2689 #
2690 # The value below is the one more than the default.
2691 #
2692 options         PMAP_SHPGPERPROC=201
2693
2694 #
2695 # Change the size of the kernel virtual address space.  Due to
2696 # constraints in loader(8) on i386, this must be a multiple of 4.
2697 # 256 = 1 GB of kernel address space.  Increasing this also causes
2698 # a reduction of the address space in user processes.  512 splits
2699 # the 4GB cpu address space in half (2GB user, 2GB kernel).
2700 #
2701 options         KVA_PAGES=260
2702
2703 #
2704 # Disable swapping. This option removes all code which actually performs
2705 # swapping, so it's not possible to turn it back on at run-time.
2706 #
2707 # This is sometimes usable for systems which don't have any swap space
2708 # (see also sysctls "vm.defer_swapspace_pageouts" and
2709 # "vm.disable_swapspace_pageouts")
2710 #
2711 #options        NO_SWAPPING
2712
2713 # Set the number of sf_bufs to allocate. sf_bufs are virtual buffers
2714 # for sendfile(2) that are used to map file VM pages, and normally
2715 # default to a quantity that is roughly 16*MAXUSERS+512. You would
2716 # typically want about 4 of these for each simultaneous file send.
2717 #
2718 options         NSFBUFS=1024
2719
2720 #
2721 # Enable extra debugging code for locks.  This stores the filename and
2722 # line of whatever acquired the lock in the lock itself, and change a
2723 # number of function calls to pass around the relevant data.  This is
2724 # not at all useful unless you are debugging lock code.  Also note
2725 # that it is likely to break e.g. fstat(1) unless you recompile your
2726 # userland with -DDEBUG_LOCKS as well.
2727 #
2728 options         DEBUG_LOCKS
2729
2730 \f
2731 #####################################################################
2732 # ABI Emulation
2733
2734 # Enable iBCS2 runtime support for SCO and ISC binaries
2735 options         IBCS2
2736
2737 # Emulate spx device for client side of SVR3 local X interface
2738 options         SPX_HACK
2739
2740 # Enable Linux ABI emulation
2741 options         COMPAT_LINUX
2742
2743 # Enable the linux-like proc filesystem support (requires COMPAT_LINUX
2744 # and PSEUDOFS)
2745 options         LINPROCFS
2746
2747 # Linux debugging
2748 options         DEBUG_LINUX
2749
2750 #
2751 # SysVR4 ABI emulation
2752 #
2753 # The svr4 ABI emulator can be statically compiled into the kernel or loaded as
2754 # a KLD module.  
2755 # The STREAMS network emulation code can also be compiled statically or as a 
2756 # module.  If loaded as a module, it must be loaded before the svr4 module
2757 # (the /usr/sbin/svr4 script does this for you).  If compiling statically,
2758 # the `streams' device must be configured into any kernel which also
2759 # specifies COMPAT_SVR4.  It is possible to have a statically-configured 
2760 # STREAMS device and a dynamically loadable svr4 emulator;  the /usr/sbin/svr4
2761 # script understands that it doesn't need to load the `streams' module under
2762 # those circumstances.
2763 # Caveat:  At this time, `options KTRACE' is required for the svr4 emulator
2764 # (whether static or dynamic).  
2765
2766 options         COMPAT_SVR4     # build emulator statically
2767 options         DEBUG_SVR4      # enable verbose debugging
2768 device          streams         # STREAMS network driver (required for svr4).
2769
2770 \f
2771 #####################################################################
2772 # USB support
2773 # UHCI controller
2774 device          uhci
2775 # OHCI controller
2776 device          ohci
2777 # General USB code (mandatory for USB)
2778 device          usb
2779 #
2780 # USB Double Bulk Pipe devices
2781 device          udbp
2782 # Generic USB device driver
2783 device          ugen
2784 # Human Interface Device (anything with buttons and dials)
2785 device          uhid
2786 # USB keyboard
2787 device          ukbd
2788 # USB printer
2789 device          ulpt
2790 # USB Iomega Zip 100 Drive (Requires scbus and da)
2791 device          umass
2792 # USB modem support
2793 device          umodem
2794 # USB mouse
2795 device          ums
2796 # Diamond Rio 500 Mp3 player
2797 device          urio
2798 # USB scanners
2799 device          uscanner
2800 #
2801 # ADMtek USB ethernet. Supports the LinkSys USB100TX,
2802 # the Billionton USB100, the Melco LU-ATX, the D-Link DSB-650TX
2803 # and the SMC 2202USB. Also works with the ADMtek AN986 Pegasus
2804 # eval board.
2805 device          aue
2806 #
2807 # CATC USB-EL1201A USB ethernet. Supports the CATC Netmate
2808 # and Netmate II, and the Belkin F5U111.
2809 device          cue
2810 #
2811 # Kawasaki LSI ethernet. Supports the LinkSys USB10T,
2812 # Entrega USB-NET-E45, Peracom Ethernet Adapter, the
2813 # 3Com 3c19250, the ADS Technologies USB-10BT, the ATen UC10T,
2814 # the Netgear EA101, the D-Link DSB-650, the SMC 2102USB
2815 # and 2104USB, and the Corega USB-T.
2816 device          kue
2817
2818 # debugging options for the USB subsystem
2819 #
2820 options         UHCI_DEBUG
2821 options         OHCI_DEBUG
2822 options         USB_DEBUG
2823
2824 options         UGEN_DEBUG
2825 options         UHID_DEBUG
2826 options         UHUB_DEBUG
2827 options         UKBD_DEBUG
2828 options         ULPT_DEBUG
2829 options         UMASS_DEBUG
2830 options         UMS_DEBUG
2831 options         URIO_DEBUG
2832
2833 # options for ukbd:
2834 options         UKBD_DFLT_KEYMAP        # specify the built-in keymap
2835 makeoptions     UKBD_DFLT_KEYMAP=it.iso
2836
2837 #
2838 # Embedded system options:
2839 #
2840 # An embedded system might want to run something other than init.
2841 options         INIT_PATH="/sbin/init:/stand/sysinstall"
2842
2843 # Debug options
2844 options         BUS_DEBUG       # enable newbus debugging
2845 options         DEBUG_VFS_LOCKS # enable vfs lock debugging
2846 options         NPX_DEBUG       # enable npx debugging (FPU/math emu)
2847
2848 #####################################################################
2849 # SYSV IPC KERNEL PARAMETERS
2850 #
2851 # Maximum number of entries in a semaphore map.
2852 options         SEMMAP=31
2853
2854 # Maximum number of System V semaphores that can be used on the system at
2855 # one time. 
2856 options         SEMMNI=11
2857
2858 # Total number of semaphores system wide
2859 options         SEMMNS=61
2860
2861 # Total number of undo structures in system
2862 options         SEMMNU=31
2863
2864 # Maximum number of System V semaphores that can be used by a single process
2865 # at one time. 
2866 options         SEMMSL=61
2867
2868 # Maximum number of operations that can be outstanding on a single System V
2869 # semaphore at one time. 
2870 options         SEMOPM=101
2871
2872 # Maximum number of undo operations that can be outstanding on a single
2873 # System V semaphore at one time. 
2874 options         SEMUME=11
2875
2876 # Maximum number of shared memory pages system wide.
2877 options         SHMALL=1025
2878
2879 # Maximum size, in bytes, of a single System V shared memory region. 
2880 options         SHMMAX="(SHMMAXPGS*PAGE_SIZE+1)"
2881 options         SHMMAXPGS=1025
2882
2883 # Minimum size, in bytes, of a single System V shared memory region. 
2884 options         SHMMIN=2
2885
2886 # Maximum number of shared memory regions that can be used on the system
2887 # at one time. 
2888 options         SHMMNI=33
2889
2890 # Maximum number of System V shared memory regions that can be attached to
2891 # a single process at one time. 
2892 options         SHMSEG=9
2893
2894 # Set the amount of time (in seconds) the system will wait before
2895 # rebooting automatically when a kernel panic occurs.  If set to (-1),
2896 # the system will wait indefinitely until a key is pressed on the
2897 # console.
2898 options         PANIC_REBOOT_WAIT_TIME=16
2899
2900 #####################################################################
2901
2902 # More undocumented options for linting.
2903 # Note that documenting these are not considered an affront.
2904
2905 options         CAM_DEBUG_DELAY
2906
2907 # VFS cluster debugging.
2908 options         CLUSTERDEBUG
2909
2910 options         DEBUG
2911
2912 # PECOFF module (Win32 Execution Format)
2913 options         PECOFF_SUPPORT
2914 options         PECOFF_DEBUG
2915
2916 # Disable the 4 MByte PSE CPU feature.
2917 #options        DISABLE_PSE
2918
2919 options         ENABLE_ALART
2920 options         I4B_SMP_WORKAROUND
2921 options         I586_PMC_GUPROF=0x70000
2922 options         KBDIO_DEBUG=2
2923 options         KBD_MAXRETRY=4
2924 options         KBD_MAXWAIT=6
2925 options         KBD_RESETDELAY=201
2926
2927 # Enable the PF_KEY Key Management API.
2928 options         KEY
2929
2930 # Kernel filelock debugging.
2931 options         LOCKF_DEBUG
2932
2933 # System V compatible message queues
2934 # Please note that the values provided here are used to test kernel
2935 # building.  The defaults in the sources provide almost the same numbers.
2936 # MSGSSZ must be a power of 2 between 8 and 1024.
2937 options         MSGMNB=2049     # Max number of chars in queue
2938 options         MSGMNI=41       # Max number of message queue identifiers
2939 options         MSGSEG=2049     # Max number of message segments
2940 options         MSGSSZ=16       # Size of a message segment
2941 options         MSGTQL=41       # Max number of messages in system
2942
2943 options         NBUF=512        # Number of buffer headers
2944
2945 options         NMBCLUSTERS=1024        # Number of mbuf clusters
2946
2947 options         PSM_DEBUG=1
2948
2949 options         SCSI_NCR_DEBUG
2950 options         SCSI_NCR_MAX_SYNC=10000
2951 options         SCSI_NCR_MAX_WIDE=1
2952 options         SCSI_NCR_MYADDR=7
2953
2954 options         SC_DEBUG_LEVEL=5        # Syscons debug level
2955 options         SC_RENDER_DEBUG # syscons rendering debugging
2956
2957 options         SHOW_BUSYBUFS   # List buffers that prevent root unmount
2958 options         SIMPLELOCK_DEBUG
2959 options         SLIP_IFF_OPTS
2960 options         TIMER_FREQ="((14318182+6)/12)"
2961 options         VFS_BIO_DEBUG   # VFS buffer I/O debugging
2962
2963 options         VM_KMEM_SIZE
2964 options         VM_KMEM_SIZE_MAX
2965 options         VM_KMEM_SIZE_SCALE