3b7a18e203b2aaccb346026b8181a005a3f0412a
[dragonfly.git] / sys / config / LINT64
1 #
2 # LINT64 -- config file for checking all the sources, tries to pull in
3 #       as much of the source tree as it can.
4 #
5 # $FreeBSD: src/sys/i386/conf/LINT,v 1.749.2.144 2003/06/04 17:56:59 sam Exp $
6 #
7 # See the kernconf(5) manual page for more information on the format of
8 # this file.
9 #
10 # NB: You probably don't want to try running a kernel built from this
11 # file.  Instead, you should start from X86_64_GENERIC, and add options
12 # from this file as required.
13 #
14
15 # These directives are mandatory.  The machine directive specifies the
16 # platform and the machine_arch directive specifies the cpu architecture.
17 #
18 platform        pc64
19 machine         x86_64
20 machine_arch    x86_64
21
22 #
23 # This is the ``identification'' of the kernel.  Usually this should
24 # be the same as the name of your kernel.
25 #
26 ident           X86_64_LINT
27
28 #
29 # The `maxusers' parameter controls the static sizing of a number of
30 # internal system tables by a formula defined in subr_param.c.  Setting
31 # maxusers to 0 will cause the system to auto-size based on physical
32 # memory.
33 #
34 maxusers        10
35
36 #
37 # The `makeoptions' parameter allows variables to be passed to the
38 # generated Makefile in the build area.
39 #
40 # CONF_CFLAGS gives some extra compiler flags that are added to ${CFLAGS}
41 # after most other flags.  Here we use it to inhibit use of non-optimal
42 # gcc builtin functions (e.g., memcmp).
43 #
44 # DEBUG happens to be magic.
45 # The following is equivalent to 'config -g KERNELNAME' and creates
46 # 'kernel.debug' compiled with -g debugging as well as a normal
47 # 'kernel'.  Use 'make install.debug' to install the debug kernel
48 # but that isn't normally necessary as the debug symbols are not loaded
49 # by the kernel and are not useful there anyway.
50 #
51 # KERNEL can be overridden so that you can change the default name of your
52 # kernel.
53 #
54 # MODULES_OVERRIDE can be used to limit modules built to a specific list.
55 #
56 # INSTALLSTRIPPED can be set to cause installkernel to install stripped
57 # kernels and modules rather than a kernel and modules with debug symbols.
58 #
59 # INSTALLSTRIPPEDMODULES can be set to allow a full debug kernel to be
60 # installed, but to strip the installed modules.
61 #
62 makeoptions     CONF_CFLAGS=-fno-builtin  #Don't allow use of memcmp, etc.
63 #makeoptions    DEBUG=-g                #Build kernel with gdb(1) debug symbols
64 #makeoptions    KERNEL=foo              #Build kernel "foo" and install "/foo"
65 # Only build those parts of the sound system I need.
66 #makeoptions    MODULES_OVERRIDE="sound/snd sound/pcm"
67 #makeoptions    INSTALLSTRIPPED=1
68 #makeoptions    INSTALLSTRIPPEDMODULES=1
69
70 #
71 # Certain applications can grow to be larger than the 128M limit
72 # that DragonFly initially imposes.  Below are some options to
73 # allow that limit to grow to 256MB, and can be increased further
74 # with changing the parameters.  MAXDSIZ is the maximum that the
75 # limit can be set to, and the DFLDSIZ is the default value for
76 # the limit.  MAXSSIZ is the maximum that the stack limit can be
77 # set to.  You might want to set the default lower than the max,
78 # and explicitly set the maximum with a shell command for processes
79 # that regularly exceed the limit like INND.
80 #
81 options         MAXDSIZ="(256*1024*1024)"
82 options         MAXSSIZ="(256*1024*1024)"
83 options         DFLDSIZ="(256*1024*1024)"
84
85 #
86 # BLKDEV_IOSIZE sets the default block size used in user block
87 # device I/O.  Note that this value will be overridden by the label
88 # when specifying a block device from a label with a non-0
89 # partition blocksize.  The default is PAGE_SIZE.
90 #
91 options         BLKDEV_IOSIZE=8192
92
93 # This allows you to actually store this configuration file into
94 # the kernel binary itself, where it may be later read by saying:
95 #    strings -n 3 /kernel | sed -n 's/^___//p' > MYKERNEL
96 #
97 options         INCLUDE_CONFIG_FILE     # Include this file in kernel
98
99 #
100 # The root device and filesystem type can be compiled in;
101 # this provides a fallback option if the root device cannot
102 # be correctly guessed by the bootstrap code, or an override if
103 # the RB_DFLTROOT flag (-r) is specified when booting the kernel.
104 #
105 options         ROOTDEVNAME=\"ufs:da0s2e\"
106
107 #####################################################################
108 # CPU OPTIONS
109
110 cpu             HAMMER_CPU
111
112 #
113 # Options for CPU features.
114 #
115 # CPU_DISABLE_AVX disables AVX instruction set.
116 #
117 options         CPU_DISABLE_AVX
118
119 #####################################################################
120 # COMPATIBILITY OPTIONS
121
122 # Enable NDIS binary driver support
123 options         NDISAPI
124 device          ndis
125
126 #
127 # These three options provide support for System V Interface
128 # Definition-style interprocess communication, in the form of shared
129 # memory, semaphores, and message queues, respectively.
130 #
131 # System V shared memory and tunable parameters
132 options         SHMMIN=2        # min shared memory segment size (bytes)
133 options         SHMMNI=33       # max number of shared memory identifiers
134 options         SHMSEG=9        # max shared memory segments per process
135
136 # System V semaphores and tunable parameters
137 options         SEMMAP=31       # amount of entries in semaphore map
138 options         SEMMNI=11       # number of semaphore identifiers in the system
139 options         SEMMNS=61       # number of semaphores in the system
140 options         SEMMNU=31       # number of undo structures in the system
141 options         SEMMSL=61       # max number of semaphores per id
142 options         SEMOPM=101      # max number of operations per semop call
143 options         SEMUME=11       # max number of undo entries per process
144
145 # System V message queues and tunable parameters
146 options         MSGMNB=2049     # max characters per message queue
147 options         MSGMNI=41       # max number of message queue identifiers
148 options         MSGSEG=2049     # max number of message segments in the system
149 options         MSGSSZ=16       # size of a message segment MUST be power of 2
150 options         MSGTQL=41       # max amount of messages in the system
151
152 #####################################################################
153 # DEBUGGING OPTIONS
154
155 #
156 # Enable the kernel debugger.
157 #
158 options         DDB
159
160 #
161 # Print a stack trace on kernel panic.
162 #
163 options         DDB_TRACE
164
165 #
166 # Don't drop into DDB for a panic. Intended for unattended operation
167 # where you may want to drop to DDB from the console, but still want
168 # the machine to recover from a panic
169 #
170 options         DDB_UNATTENDED
171
172 #
173 # If using GDB remote mode to debug the kernel, there's a non-standard
174 # extension to the remote protocol that can be used to use the serial
175 # port as both the debugging port and the system console.  It's non-
176 # standard and you're on your own if you enable it.  See also the
177 # "remotechat" variables in the DragonFly specific version of gdb.
178 #
179 options         GDB_REMOTE_CHAT
180
181 #
182 # KTRACE enables the system-call tracing facility ktrace(2).
183 #
184 options         KTRACE                  #kernel tracing
185
186 #
187 # The INVARIANTS option is used in a number of source files to enable
188 # extra sanity checking of internal structures.  This support is not
189 # enabled by default because of the extra time it would take to check
190 # for these conditions, which can only occur as a result of
191 # programming errors.
192 #
193 options         INVARIANTS
194
195 #
196 # The DIAGNOSTIC option is used to enable extra debugging information
197 # from some parts of the kernel.  As this makes everything more noisy,
198 # it is disabled by default.
199 #
200 options         DIAGNOSTIC
201
202 #
203 # This option let some drivers co-exist that can't co-exist in a running
204 # system.  This is used to be able to compile all kernel code in one go for
205 # quality assurance purposes (like this file, which the option takes it name
206 # from.)
207 #
208 options         COMPILING_LINT
209
210
211 # XXX - this doesn't belong here.
212 # Allow ordinary users to take the console - this is useful for X.
213 options         UCONSOLE
214
215 #####################################################################
216 # NETWORKING OPTIONS
217
218 #
219 # Protocol families:
220 #  Only the INET (Internet) family is officially supported in DragonFly.
221 #
222 options         INET                    #Internet communications protocols
223 options         INET6                   #IPv6 communications protocols
224
225 options         MPLS                    #Multi-Protocol Label Switching
226
227 #
228 # SMB/CIFS requester
229 # NETSMB enables support for SMB protocol, it requires LIBMCHAIN and LIBICONV
230 # options.
231 options         NETSMB                  #SMB/CIFS requester
232
233 # mchain library. It can be either loaded as KLD or compiled into kernel
234 options         LIBMCHAIN               #mbuf management library
235
236 # netgraph(4). Enable the base netgraph code with the NETGRAPH option.
237 # Individual node types can be enabled with the corresponding option
238 # listed below; however, this is not strictly necessary as netgraph
239 # will automatically load the corresponding KLD module if the node type
240 # is not already compiled into the kernel. Each type below has a
241 # corresponding man page, e.g., ng_async(4).
242 options         NETGRAPH                #netgraph(4) system
243 options         NETGRAPH_ASYNC
244 options         NETGRAPH_BPF
245 options         NETGRAPH_BRIDGE
246 options         NETGRAPH_CISCO
247 options         NETGRAPH_ECHO
248 options         NETGRAPH_EIFACE
249 options         NETGRAPH_ETHER
250 options         NETGRAPH_FEC
251 options         NETGRAPH_FRAME_RELAY
252 options         NETGRAPH_HOLE
253 options         NETGRAPH_IFACE
254 options         NETGRAPH_KSOCKET
255 options         NETGRAPH_L2TP
256 options         NETGRAPH_LMI
257 # MPPC compression requires proprietary files (not included)
258 #options        NETGRAPH_MPPC_COMPRESSION
259 options         NETGRAPH_MPPC_ENCRYPTION
260 options         NETGRAPH_ONE2MANY
261 options         NETGRAPH_PPP
262 options         NETGRAPH_PPPOE
263 options         NETGRAPH_PPTPGRE
264 options         NETGRAPH_RFC1490
265 options         NETGRAPH_SOCKET
266 options         NETGRAPH_TEE
267 options         NETGRAPH_TTY
268 options         NETGRAPH_UI
269 options         NETGRAPH_VJC
270
271 device          mn      # Munich32x/Falc54 Nx64kbit/sec cards.
272
273 #
274 # Network interfaces:
275 #  The `loop' pseudo-device is MANDATORY when networking is enabled.
276 #  The `ether' pseudo-device provides generic code to handle
277 #  Ethernets; it is MANDATORY when a Ethernet device driver is
278 #  configured.
279 #  The `sppp' pseudo-device serves a similar role for certain types
280 #  of synchronous PPP links.
281 #  The `sl' pseudo-device implements the Serial Line IP (SLIP) service.
282 #  The `bpf' pseudo-device enables the Berkeley Packet Filter.  Be
283 #  aware of the legal and administrative consequences of enabling this
284 #  option.  The number of devices determines the maximum number of
285 #  simultaneous BPF clients programs runnable.
286 #  The `disc' pseudo-device implements a minimal network interface,
287 #  which throws away all packets sent and never receives any.  It is
288 #  included for testing purposes.  This shows up as the 'ds' interface.
289 #  The `tun' pseudo-device implements (user-)ppp and nos-tun
290 #  The `gif' pseudo-device implements IPv6 over IP4 tunneling,
291 #  IPv4 over IPv6 tunneling, IPv4 over IPv4 tunneling and
292 #  IPv6 over IPv6 tunneling.
293 #  The `gre' device implements two types of IP4 over IP4 tunneling:
294 #  GRE and MOBILE, as specified in the RFC1701 and RFC2004.
295 #  The `stf' device implements 6to4 encapsulation.
296 #  The `ef' pseudo-device provides support for multiple ethernet frame types
297 #  specified via ETHER_* options. See ef(4) for details.
298 #
299 pseudo-device   ether                   #Generic Ethernet
300 pseudo-device   vlan    1               #VLAN support
301 pseudo-device   bridge                  #Bridging support
302 pseudo-device   sppp                    #Generic Synchronous PPP
303 pseudo-device   loop                    #Network loopback device
304 pseudo-device   bpf                     #Berkeley packet filter
305 pseudo-device   disc                    #Discard device (ds0, ds1, etc)
306 pseudo-device   tap                     #Ethernet tunnel network interface
307 pseudo-device   tun                     #Tunnel driver (ppp(8), nos-tun(8))
308 pseudo-device   sl      2               #Serial Line IP
309 pseudo-device   gre                     #IP over IP tunneling
310
311 # for IPv6
312 pseudo-device   gif                     #IPv6 and IPv4 tunneling
313 pseudo-device   stf                     #6to4 IPv6 over IPv4 encapsulation
314
315 #
316 # Internet family options:
317 #
318 # MROUTING enables the kernel multicast packet forwarder, which works
319 # with mrouted(8).
320 #
321 # PIM enables Protocol Independent Multicast in the kernel.
322 # Requires MROUTING enabled.
323 #
324 # IPFIREWALL enables support for IP firewall construction, in
325 # conjunction with the `ipfw' program.  IPFIREWALL_VERBOSE sends
326 # logged packets to the system logger.  IPFIREWALL_VERBOSE_LIMIT
327 # limits the number of times a matching entry can be logged.
328 #
329 # WARNING:  IPFIREWALL defaults to a policy of "deny ip from any to any"
330 # and if you do not add other rules during startup to allow access,
331 # YOU WILL LOCK YOURSELF OUT.  It is suggested that you set firewall_type=open
332 # in /etc/rc.conf when first enabling this feature, then refining the
333 # firewall rules in /etc/rc.firewall after you've tested that the new kernel
334 # feature works properly.
335 #
336 # IPFIREWALL3 is based on a newer version of FreeBSD's ipfw2, along with
337 # some enhancements. See ipfw3(4).
338 #
339 # IPFIREWALL_DEFAULT_TO_ACCEPT causes the default rule (at boot) to
340 # allow everything.  Use with care, if a cracker can crash your
341 # firewall machine, they can get to your protected machines.  However,
342 # if you are using it as an as-needed filter for specific problems as
343 # they arise, then this may be for you.  Changing the default to 'allow'
344 # means that you won't get stuck if the kernel and /sbin/ipfw binary get
345 # out of sync.
346 #
347 # IPDIVERT enables the divert IP sockets, used by ``ipfw divert''
348 #
349 # IPSTEALTH enables code to support stealth forwarding (i.e., forwarding
350 # packets without touching the ttl).  This can be useful to hide firewalls
351 # from traceroute and similar tools.
352 #
353 # TCPDEBUG is undocumented.
354 #
355 # ICMPPRINTFS enables ICMP to do extra debug prints.
356 #
357 options         MROUTING                # Multicast routing
358 options         PIM                     # Protocol Independent Multicast
359 options         IPFIREWALL              #firewall
360 options         IPFIREWALL_DEBUG        #debug prints
361 options         IPFIREWALL_VERBOSE      #enable logging to syslogd(8)
362 options         IPFIREWALL_VERBOSE_LIMIT=100    #limit verbosity
363 options         IPFIREWALL_DEFAULT_TO_ACCEPT    #allow everything by default
364 options         IPV6FIREWALL            #firewall for IPv6
365 options         IPV6FIREWALL_VERBOSE
366 options         IPV6FIREWALL_VERBOSE_LIMIT=100
367 options         IPV6FIREWALL_DEFAULT_TO_ACCEPT
368 options         IPDIVERT                #divert sockets
369 options         IPSTEALTH               #support for stealth forwarding
370 options         TCPDEBUG
371 options         ICMPPRINTFS
372
373 options         IPFIREWALL3
374
375 device          pf
376 device          pflog
377
378 #CARP
379 pseudo-device carp
380 options CARP
381
382 # The MBUF_STRESS_TEST option enables options which create
383 # various random failures / extreme cases related to mbuf
384 # functions.  See the mbuf(9) manpage for a list of available
385 # test cases.
386 options         MBUF_STRESS_TEST
387
388 # Statically link in accept filters
389 options                ACCEPT_FILTER_DATA
390 options                ACCEPT_FILTER_HTTP
391
392 # TCP_SIGNATURE adds support for RFC 2385 (TCP-MD5) digests. These are
393 # carried in TCP option 19.
394 # This is enabled on a per-socket basis using the TCP_SIGNATURE_ENABLE
395 # socket option.
396 # This requires the use of 'device crypto' or 'device cryptodev'.
397 #
398 # XXX disabled for now until building with it is fixed, which broke
399 # after removing IPsec.
400 #
401 #options   TCP_SIGNATURE   #include support for RFC 2385
402
403 #
404 # TCP_DROP_SYNFIN adds support for ignoring TCP packets with SYN+FIN. This
405 # prevents nmap et al. from identifying the TCP/IP stack, but breaks support
406 # for RFC1644 extensions and is not recommended for web servers.
407 #
408 options         TCP_DROP_SYNFIN         #drop TCP packets with SYN+FIN
409
410 # ICMP_BANDLIM enables icmp error response bandwidth limiting.   You
411 # typically want this option as it will help protect the machine from
412 # D.O.S. packet attacks.
413 #
414 options         ICMP_BANDLIM
415
416 # DUMMYNET enables the "dummynet" bandwidth limiter. You need
417 # IPFIREWALL as well. See the dummynet(4) and ipfw(8) manpages for more info.
418 #
419 options         DUMMYNET
420 options         DUMMYNET_DEBUG
421
422 # IFPOLL_ENABLE adds support for mixed interrupt-polling handling
423 # of network device drivers, which has significant benefits in terms
424 # of robustness to overloads and responsivity, as well as permitting
425 # accurate scheduling of the CPU time between kernel network processing
426 # and other activities. The drawback is a moderate (up to 1/pollhz seconds)
427 # potential increase in response times. See polling(4) for further details.
428 #
429 # IFPOLL_ENABLE adds hardware queues' based polling
430 options         IFPOLL_ENABLE
431
432 #####################################################################
433 # FILESYSTEM OPTIONS
434
435 #
436 # Only the root, /usr, and /tmp filesystems need be statically
437 # compiled; everything else will be automatically loaded at mount
438 # time.  (Exception: the UFS family --- FFS, and MFS ---
439 # cannot currently be demand-loaded.)  Some people still prefer
440 # to statically compile other filesystems as well.
441 #
442
443 # One of these is mandatory:
444 options         FFS                     #Fast filesystem
445 options         MFS                     #Memory filesystem
446 options         NFS                     #Network filesystem
447
448 # The rest are optional:
449 #options        NFS_NOSERVER            #Disable the NFS-server code.
450 options         AUTOFS                  #Automounter filesystem
451 options         CD9660                  #ISO 9660 filesystem
452 options         HAMMER                  #HAMMER filesystem
453 options         HAMMER2                 #HAMMER2 filesystem
454 options         HPFS                    #OS/2 File system
455 options         MSDOSFS                 #MS DOS filesystem
456 options         NTFS                    #NT filesystem
457 options         NULLFS                  #NULL filesystem
458 options         PROCFS                  #Process filesystem
459 options         PUFFS                   #Userspace file systems (e.g. ntfs-3g & sshfs)
460 options         SMBFS                   #SMB/CIFS filesystem
461 options         TMPFS                   #Temporary filesystem
462 options         UDF                     #UDF filesystem
463
464 # The xFS_ROOT options REQUIRE the associated ``options xFS''
465 options         NFS_ROOT                #NFS usable as root device
466
467 # Soft updates is technique for improving UFS filesystem speed and
468 # making abrupt shutdown less risky.
469 options         SOFTUPDATES
470
471 # Directory hashing improves the speed of operations on very large
472 # directories at the expense of some memory.
473 options         UFS_DIRHASH
474
475 # Make space in the kernel for a root filesystem on a md device.
476 # Define to the number of kilobytes to reserve for the filesystem.
477 options         MD_ROOT_SIZE=10
478
479 # Make the md device a potential root device, either with preloaded
480 # images of type mfs_root or md_root.
481 options         MD_ROOT
482
483 # Specify double the default maximum size for malloc(9)-backed md devices.
484 options         MD_NSECT=40000
485
486 # Allow this many swap-devices.
487 #
488 # In order to manage swap, the system must reserve bitmap space that
489 # scales with the largest mounted swap device multiplied by NSWAPDEV,
490 # regardless of whether other swap devices exist or not.  So it
491 # is not a good idea to make this value too large.
492 options         NSWAPDEV=5
493
494 # Disk quotas are supported when this option is enabled.
495 options         QUOTA                   #enable disk quotas
496
497 # If you are running a machine just as a fileserver for PC and MAC
498 # users, e.g. using SAMBA, you may consider setting this option
499 # and keeping all those users' directories on a filesystem that is
500 # mounted with the suiddir option. This gives new files the same
501 # ownership as the directory (similar to group). It's a security hole
502 # if you let these users run programs, so confine it to file-servers
503 # (but it'll save you lots of headaches in those cases). Root owned
504 # directories are exempt and X bits are cleared. The suid bit must be
505 # set on the directory as well; see chmod(1) PC owners can't see/set
506 # ownerships so they keep getting their toes trodden on. This saves
507 # you all the support calls as the filesystem it's used on will act as
508 # they expect: "It's my dir so it must be my file".
509 #
510 options         SUIDDIR
511
512 # NFS options:
513 options         NFS_MINATTRTIMO=3       # VREG attrib cache timeout in sec
514 options         NFS_MAXATTRTIMO=60
515 options         NFS_MINDIRATTRTIMO=30   # VDIR attrib cache timeout in sec
516 options         NFS_MAXDIRATTRTIMO=60
517 options         NFS_GATHERDELAY=10      # Default write gather delay (msec)
518 options         NFS_UIDHASHSIZ=29       # Tune the size of nfssvc_sock with this
519 options         NFS_WDELAYHASHSIZ=16    # and with this
520 options         NFS_MUIDHASHSIZ=63      # Tune the size of nfsmount with this
521 options         NFS_DEBUG               # Enable NFS Debugging
522
523 # NTFS options:
524 options         NTFS_DEBUG
525
526 # MSDOSFS options:
527 options         MSDOSFS_DEBUG           # Enable MSDOSFS Debugging
528
529 #
530 # Add support for the EXT2FS filesystem of Linux fame.  Be a bit
531 # careful with this - the ext2fs code has a tendency to lag behind
532 # changes and not be exercised very much, so mounting read/write could
533 # be dangerous (and even mounting read only could result in panics.)
534 #
535 options         EXT2FS
536
537 # Optional character code conversion support with LIBICONV.
538 # Each option requires their base file system and LIBICONV.
539 options         CD9660_ICONV
540 options         MSDOSFS_ICONV
541 options         NTFS_ICONV
542
543 #####################################################################
544 # POSIX P1003.1B
545
546 # Real time extensions added in the 1993 Posix
547 # _KPOSIX_PRIORITY_SCHEDULING: Build in _POSIX_PRIORITY_SCHEDULING
548
549 options         _KPOSIX_PRIORITY_SCHEDULING
550
551 #####################################################################
552 # CLOCK OPTIONS
553
554 # The granularity of operation is controlled by the kernel option HZ whose
555 # default value (100) means a granularity of 10ms (1s/HZ).
556 # Consider, however, that reducing the granularity too much might
557 # cause excessive overhead in clock interrupt processing,
558 # potentially causing ticks to be missed and thus actually reducing
559 # the accuracy of operation.
560
561 options         HZ=100
562
563 #####################################################################
564 # SCSI DEVICES
565
566 # SCSI DEVICE CONFIGURATION
567
568 # The SCSI subsystem consists of the `base' SCSI code, a number of
569 # high-level SCSI device `type' drivers, and the low-level host-adapter
570 # device drivers.  The host adapters are listed in the ISA and PCI
571 # device configuration sections below.
572 #
573 # Beginning with FreeBSD 2.0.5 you can wire down your SCSI devices so
574 # that a given bus, target, and LUN always come on line as the same
575 # device unit.  In earlier versions the unit numbers were assigned
576 # in the order that the devices were probed on the SCSI bus.  This
577 # means that if you removed a disk drive, you may have had to rewrite
578 # your /etc/fstab file, and also that you had to be careful when adding
579 # a new disk as it may have been probed earlier and moved your device
580 # configuration around.
581
582 # This old behavior is maintained as the default behavior.  The unit
583 # assignment begins with the first non-wired down unit for a device
584 # type.  For example, if you wire a disk as "da3" then the first
585 # non-wired disk will be assigned da4.
586
587 # The syntax for wiring down devices is:
588
589 # device        scbus0 at ahc0          # Single bus device
590 # device        scbus1 at ahc1 bus 0    # Single bus device
591 # device        scbus3 at ahc2 bus 0    # Twin bus device
592 # device        scbus2 at ahc2 bus 1    # Twin bus device
593 # device        da0 at scbus0 target 0 unit 0
594 # device        da1 at scbus3 target 1
595 # device        da2 at scbus2 target 3
596 # device        sa1 at scbus1 target 6
597 # device        cd
598
599 # "units" (SCSI logical unit number) that are not specified are
600 # treated as if specified as LUN 0.
601
602 # All SCSI devices allocate as many units as are required.
603
604 # The "unknown" device (uk? in pre-2.0.5) is now part of the base SCSI
605 # configuration and doesn't have to be explicitly configured.
606
607 device          scbus                   #base SCSI code
608 device          ch                      #SCSI media changers
609 device          da                      #SCSI direct access devices (aka disks)
610 device          sa                      #SCSI tapes
611 device          cd                      #SCSI CD-ROMs
612 device          pass                    #CAM passthrough driver
613 device          sg                      #Passthrough device (linux scsi generic)
614 device          pt                      #SCSI processor type
615 device          ses                     #SCSI SES/SAF-TE driver
616 device          targ                    #SCSI Target Mode Code
617 device          targbh                  #SCSI Target Mode Blackhole Device
618
619 # Options for device mapper
620 device          dm
621 device          dm_target_crypt
622 device          dm_target_linear
623 device          dm_target_striped
624 device          dm_target_delay
625 device          dm_target_flakey
626
627 # Options for iSCSI
628 device          iscsi_initiator
629 options         ISCSI_INITIATOR_DEBUG=8
630
631 # CAM OPTIONS:
632 # debugging options:
633 # -- NOTE --  If you specify one of the bus/target/lun options, you must
634 #             specify them all!
635 # CAMDEBUG: When defined enables debugging macros
636 # CAM_DEBUG_BUS:  Debug the given bus.  Use -1 to debug all busses.
637 # CAM_DEBUG_TARGET:  Debug the given target.  Use -1 to debug all targets.
638 # CAM_DEBUG_LUN:  Debug the given lun.  Use -1 to debug all luns.
639 # CAM_DEBUG_FLAGS:  OR together CAM_DEBUG_INFO, CAM_DEBUG_TRACE,
640 #                   CAM_DEBUG_SUBTRACE, and CAM_DEBUG_CDB
641 #
642 # CAM_MAX_HIGHPOWER: Maximum number of concurrent high power (start unit) cmds
643 # SCSI_NO_SENSE_STRINGS: When defined disables sense descriptions
644 # SCSI_NO_OP_STRINGS: When defined disables opcode descriptions
645 # SCSI_DELAY: The number of MILLISECONDS to freeze the SIM (scsi adapter)
646 #             queue after a bus reset, and the number of milliseconds to
647 #             freeze the device queue after a bus device reset.  This
648 #             can be changed at boot and runtime with the
649 #             kern.cam.scsi_delay tunable/sysctl.
650 options         CAMDEBUG
651 options         CAM_DEBUG_BUS=-1
652 options         CAM_DEBUG_TARGET=-1
653 options         CAM_DEBUG_LUN=-1
654 options         CAM_DEBUG_FLAGS="CAM_DEBUG_INFO|CAM_DEBUG_TRACE|CAM_DEBUG_CDB"
655 options         CAM_MAX_HIGHPOWER=4
656 options         SCSI_NO_SENSE_STRINGS
657 options         SCSI_NO_OP_STRINGS
658 options         SCSI_DELAY=8000 # Be pessimistic about Joe SCSI device
659
660 # Options for the CAM CDROM driver:
661 # CHANGER_MIN_BUSY_SECONDS: Guaranteed minimum time quantum for a changer LUN
662 # CHANGER_MAX_BUSY_SECONDS: Maximum time quantum per changer LUN, only
663 #                           enforced if there is I/O waiting for another LUN
664 # The compiled in defaults for these variables are 2 and 10 seconds,
665 # respectively.
666 #
667 # These can also be changed on the fly with the following sysctl variables:
668 # kern.cam.cd.changer.min_busy_seconds
669 # kern.cam.cd.changer.max_busy_seconds
670 #
671 options         CHANGER_MIN_BUSY_SECONDS=2
672 options         CHANGER_MAX_BUSY_SECONDS=10
673
674 # Options for the CAM sequential access driver:
675 # SA_IO_TIMEOUT: Timeout for read/write/wfm  operations, in minutes
676 # SA_SPACE_TIMEOUT: Timeout for space operations, in minutes
677 # SA_REWIND_TIMEOUT: Timeout for rewind operations, in minutes
678 # SA_ERASE_TIMEOUT: Timeout for erase operations, in minutes
679 # SA_1FM_AT_EOD: Default to model which only has a default one filemark at EOT.
680 options         SA_IO_TIMEOUT="(4)"
681 options         SA_SPACE_TIMEOUT="(60)"
682 options         SA_REWIND_TIMEOUT="(2*60)"
683 options         SA_ERASE_TIMEOUT="(4*60)"
684 options         SA_1FM_AT_EOD
685
686 # Optional timeout for the CAM processor target (pt) device
687 # This is specified in seconds.  The default is 60 seconds.
688 options         SCSI_PT_DEFAULT_TIMEOUT="60"
689
690 # Optional enable of doing SES passthrough on other devices (e.g., disks)
691 #
692 # Normally disabled because a lot of newer SCSI disks report themselves
693 # as having SES capabilities, but this can then clot up attempts to build
694 # build a topology with the SES device that's on the box these drives
695 # are in....
696 options         SES_ENABLE_PASSTHROUGH
697
698 #####################################################################
699 # MISCELLANEOUS DEVICES AND OPTIONS
700
701 # The `pty' device usually turns out to be ``effectively mandatory'',
702 # as it is required for `telnetd', `rlogind', `screen', `emacs', and
703 # `xterm', among others.
704
705 pseudo-device   pty             # Pseudo ttys
706 pseudo-device   gzip            # Exec gzipped a.out's
707 pseudo-device   md              # Memory/malloc disk
708 pseudo-device   vn              # File image "disks"
709 pseudo-device   putter          # for puffs and pud
710 pseudo-device   snp             # Snoop device - to look at pty/vty/etc..
711 pseudo-device   ccd     4       # Concatenated disk driver
712
713 # Configuring Vinum into the kernel is not necessary, since the kld
714 # module gets started automatically when vinum(8) starts.  This
715 # device is also untested.  Use at your own risk.
716 #
717 # The option VINUMDEBUG must match the value set in CFLAGS
718 # in src/sbin/vinum/Makefile.  Failure to do so will result in
719 # the following message from vinum(8):
720 #
721 # Can't get vinum config: Invalid argument
722 #
723 # see vinum(4) for more reasons not to use these options.
724 pseudo-device   vinum           #Vinum concat/mirror/raid driver
725 options         VINUMDEBUG      #enable Vinum debugging hooks
726
727 # Kernel side iconv library
728 options         LIBICONV
729
730 # Size of the kernel message buffer.  Should be N * pagesize.
731 options         MSGBUF_SIZE=40960
732
733 #####################################################################
734 # HARDWARE DEVICE CONFIGURATION
735
736 # ISA devices:
737
738 #
739 # Mandatory ISA devices: isa
740 #
741 device          isa
742
743 #
744 # Options for `isa':
745 #
746 # AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
747 # interrupt controller.  This saves about 0.7-1.25 usec for each interrupt.
748 # This option breaks suspend/resume on some portables.
749 #
750 # AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A
751 # interrupt controller.  This saves about 0.7-1.25 usec for each interrupt.
752 # Automatic EOI is documented not to work for the slave with the
753 # original i8259A, but it works for some clones and some integrated
754 # versions.
755 #
756 # MAXMEM specifies the amount of RAM on the machine; if this is not
757 # specified, DragonFly will first read the amount of memory from the CMOS
758 # RAM, so the amount of memory will initially be limited to 64MB or 16MB
759 # depending on the BIOS.  If the BIOS reports 64MB, a memory probe will
760 # then attempt to detect the installed amount of RAM.  If this probe
761 # fails to detect >64MB RAM you will have to use the MAXMEM option.
762 # The amount is in kilobytes, so for a machine with 128MB of RAM, it would
763 # be 131072 (128 * 1024).
764 #
765 # BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
766 # reset the CPU for reboot.  This is needed on some systems with broken
767 # keyboard controllers.
768
769 options         AUTO_EOI_1
770 #options        AUTO_EOI_2
771 options         MAXMEM="(128*1024)"
772 #options        BROKEN_KEYBOARD_RESET
773
774 # Enable support for the kernel PLL to use an external PPS signal,
775 # under supervision of [x]ntpd(8)
776 # More info in ntpd documentation: http://www.eecis.udel.edu/~ntp
777
778 options         PPS_SYNC
779
780 # The keyboard controller; it controls the keyboard and the PS/2 mouse.
781 device          atkbdc0 at isa? port IO_KBD
782
783 # The AT keyboard
784 device          atkbd0  at atkbdc? irq 1
785
786 # Options for atkbd:
787 options         ATKBD_DFLT_KEYMAP       # specify the built-in keymap
788 makeoptions     ATKBD_DFLT_KEYMAP="jp.106"
789
790 # These options are valid for other keyboard drivers as well.
791 options         KBD_DISABLE_KEYMAP_LOAD # refuse to load a keymap
792 options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
793
794 # `flags' for atkbd:
795 #       0x01    Force detection of keyboard, else we always assume a keyboard
796 #       0x02    Don't reset keyboard, useful for some newer ThinkPads
797 #       0x03    Force detection and avoid reset, might help with certain
798 #               dockingstations
799 #       0x04    Old-style (XT) keyboard support, useful for older ThinkPads
800
801 # PS/2 mouse
802 device          psm0    at atkbdc? irq 12
803
804 # Options for psm:
805 options         PSM_HOOKRESUME          #hook the system resume event, useful
806                                         #for some laptops
807 options         PSM_RESETAFTERSUSPEND   #reset the device at the resume event
808
809 device          kbdmux                  # keyboard multiplexer
810
811 # The video card driver.
812 device          vga0    at isa?
813
814 # Options for vga:
815 options         VGA_DEBUG=2             # enable VGA debug output
816
817 # If you experience problems switching back to 80x25 (or a derived mode),
818 # the following option might help.
819 #options        VGA_KEEP_POWERON_MODE   # use power-on settings for 80x25
820
821 # If you can dispense with some vga driver features, you may want to
822 # use the following options to save some memory.
823 #options        VGA_NO_FONT_LOADING     # don't save/load font
824 #options        VGA_NO_MODE_CHANGE      # don't change video modes
825
826 # The following option probably won't work with the LCD displays.
827 options         VGA_WIDTH90             # support 90 column modes
828
829 # Splash screen at start up!  Screen savers require this too.
830 pseudo-device   splash
831
832 # The syscons console driver (sco color console compatible).
833 device          sc0     at nexus?
834 options         MAXCONS=16              # number of virtual consoles
835 options         SC_ALT_MOUSE_IMAGE      # simplified mouse cursor in text mode
836 options         SC_DEBUG_LEVEL=5        # enable debug output
837 options         SC_DFLT_FONT            # compile font in
838 makeoptions     SC_DFLT_FONT=cp850
839 options         SC_DISABLE_DDBKEY       # disable `debug' key
840 options         SC_DISABLE_REBOOT       # disable reboot key sequence
841 options         SC_HISTORY_SIZE=200     # number of history buffer lines
842 options         SC_MOUSE_CHAR=0x3       # char code for text mode mouse cursor
843 options         SC_PIXEL_MODE           # add support for the raster text mode
844
845 # The following options will let you change the default colors of syscons.
846 options         SC_NORM_ATTR="(FG_GREEN|BG_BLACK)"
847 options         SC_NORM_REV_ATTR="(FG_YELLOW|BG_GREEN)"
848 options         SC_KERNEL_CONS_ATTR="(FG_RED|BG_BLACK)"
849 options         SC_KERNEL_CONS_REV_ATTR="(FG_BLACK|BG_RED)"
850 options         SC_BORDER_COLOR="FG_BLACK"
851
852 # If you have a two button mouse, you may want to add the following option
853 # to use the right button of the mouse to paste text.
854 options         SC_TWOBUTTON_MOUSE
855
856 # You can selectively disable features in syscons.
857 #options        SC_NO_CUTPASTE
858 #options        SC_NO_FONT_LOADING
859 #options        SC_NO_HISTORY
860 #options        SC_NO_SYSMOUSE
861
862 #
863 # SCSI host adapters
864 #
865 # adv: All Narrow SCSI bus AdvanSys controllers.
866 # adw: Second Generation AdvanSys controllers including the ADV940UW.
867 # bt: Most Buslogic controllers
868 #
869 # Note that the order is important in order for Buslogic cards to be
870 # probed correctly.
871 #
872
873 device          bt
874 device          adv
875 device          adw
876
877 #
878 # Adaptec FSA RAID controllers, including integrated DELL controller,
879 # the Dell PERC 2/QC and the HP NetRAID-4M
880 #
881 device          aac
882 options         AAC_DEBUG
883 device          aacp    # SCSI Passthrough interface (optional, CAM required)
884
885 #
886 # Compaq Smart RAID, Mylex DAC960 and AMI MegaRAID controllers.  Only
887 # one entry is needed; the code will find and configure all supported
888 # controllers.
889 #
890 device          ida             # Compaq Smart RAID
891 device          mlx             # Mylex DAC960
892 device          amr             # AMI MegaRAID
893 device          amrp            # SCSI Passthrough interface (optional, CAM req.)
894 options         AMR_DEBUG=3
895 device          mfi             # LSI MegaRAID SAS
896 device          mfip            # LSI MegaRAID SAS passthrough, requires CAM
897 options         MFI_DEBUG
898
899 #
900 # LSI MegaRAID 6Gb/s and 12Gb/s SAS+SATA RAID controller driver
901 #
902 device          mrsas
903
904 #
905 # Areca RAID (CAM is required).
906 #
907 device          arcmsr          # Areca SATA II RAID
908
909 #
910 # Highpoint RocketRAID 182x.
911 device          hptmv
912
913 #
914 # Highpoint RocketRAID.  Supports RR172x, RR222x, RR2240, RR232x, RR2340,
915 # RR2210, RR174x, RR2522, RR231x, RR230x.
916 device          hptrr
917
918 #
919 # Highpoint RocketRAID 27xx.
920 device          "hpt27xx"
921
922 #
923 # Highpoint RocketRaid 3xxx series SATA RAID
924 device          hptiop
925
926 #
927 # 3ware ATA RAID
928 #
929 device          twe             # 3ware ATA RAID
930 device          twa             # 3ware 9000 series PATA/SATA RAID
931 options         TWA_DEBUG=10    # enable debug messages
932 device          tws             # 3ware 9750 series SATA/SAS RAID
933
934 #
935 # IBM ServeRAID
936 #
937 device  ips
938
939 # AHCI driver, this will override NATA for AHCI devices,
940 # both drivers may be included.
941 #
942 device          ahci
943
944 # NVME driver
945 #
946 device          nvme
947
948 # SiI3124/3132 driver
949 #
950 device          sili
951
952 # The 'NATA' driver supports all ATA and ATAPI devices.
953 # You only need one "device nata" for it to find all
954 # PCI ATA/ATAPI devices on modern machines.
955 #
956 device          nata
957 device          natadisk        # ATA disk drives
958 device          natapicd        # ATAPI CD/DVD drives
959 device          natapifd        # ATAPI floppy drives
960 device          natapist        # ATAPI tape drives
961 device          natapicam       # ATAPI CAM layer emulation
962 device          nataraid        # support for ATA software RAID controllers
963
964 # The following options are valid for the NATA driver:
965 #
966 # ATA_STATIC_ID:        controller numbering is static (like the old driver)
967 #                       else the device numbers are dynamically allocated.
968 # ATA_NO_*:             leave out support for the specified controller brand
969 #
970 options         ATA_STATIC_ID
971 #options        ATA_NO_ACARD
972 #options        ATA_NO_ACERLABS
973 #options        ATA_NO_AHCI
974 #options        ATA_NO_AMD
975 #options        ATA_NO_CYPRESS
976 #options        ATA_NO_CYRIX
977 #options        ATA_NO_HIGHPOINT
978 #options        ATA_NO_INTEL
979 #options        ATA_NO_ITE
980 #options        ATA_NO_JMICRON
981 #options        ATA_NO_MARVELL
982 #options        ATA_NO_NATIONAL
983 #options        ATA_NO_NETCELL
984 #options        ATA_NO_NVIDIA
985 #options        ATA_NO_PROMISE
986 #options        ATA_NO_SERVERWORKS
987 #options        ATA_NO_SILICONIMAGE
988 #options        ATA_NO_SIS
989 #options        ATA_NO_VIA
990
991 # For older non-PCI systems, these are the lines to use:
992 #
993 #device         nata0   at isa? port IO_WD1 irq 14
994 #device         nata1   at isa? port IO_WD2 irq 15
995
996 #
997 # Standard floppy disk controllers: `fdc' and `fd' (see fdc(4))
998 #
999 device          fdc0    at isa? port IO_FD1 irq 6 drq 2
1000 #
1001 # FDC_DEBUG enables floppy debugging.  Since the debug output is huge, you
1002 # gotta turn it actually on by setting the variable fd_debug with DDB,
1003 # however.
1004 options         FDC_DEBUG
1005
1006 device          fd0     at fdc0 drive 0
1007 device          fd1     at fdc0 drive 1
1008
1009 # LMC/SBE LMC1504 quad T1/E1 driver
1010 #
1011 device          musycc
1012
1013 #
1014 # sio: serial ports (see sio(4))
1015
1016 device          sio0    at isa? port IO_COM1 flags 0x10 irq 4
1017
1018 #
1019 # `flags' for serial drivers that support consoles (only for sio now):
1020 #       0x10    enable console support for this unit.  The other console flags
1021 #               are ignored unless this is set.  Enabling console support does
1022 #               not make the unit the preferred console - boot with -h or set
1023 #               the 0x20 flag for that.  Currently, at most one unit can have
1024 #               console support; the first one (in config file order) with
1025 #               this flag set is preferred.  Setting this flag for sio0 gives
1026 #               the old behaviour.
1027 #       0x20    force this unit to be the console (unless there is another
1028 #               higher priority console).  This replaces the COMCONSOLE option.
1029 #       0x40    reserve this unit for low level console operations.  Do not
1030 #               access the device in any normal way.
1031 #       0x80    use this port for serial line gdb support in ddb.
1032 #
1033
1034 # Options for serial drivers that support consoles (only for sio now):
1035 options         BREAK_TO_DEBUGGER       #a BREAK on a comconsole goes to
1036                                         #DDB, if available.
1037 options         CONSPEED=115200         # speed for serial console
1038                                         # (default 9600)
1039
1040 # Solaris implements a new BREAK which is initiated by a character
1041 # sequence CR ~ ^b which is similar to a familiar pattern used on
1042 # Sun servers by the Remote Console.
1043 options         ALT_BREAK_TO_DEBUGGER
1044
1045 # Options for sio:
1046 options         COM_ESP                 #code for Hayes ESP
1047 options         COM_MULTIPORT           #code for some cards with shared IRQs
1048
1049 # Other flags for sio that aren't documented in the man page.
1050 #       0x20000 enable hardware RTS/CTS and larger FIFOs.  Only works for
1051 #               ST16650A-compatible UARTs.
1052
1053 # PCI Universal Communications driver
1054 # Supports various single and multi port PCI serial cards. Maybe later
1055 # also the parallel ports on combination serial/parallel cards. New cards
1056 # can be added in src/sys/dev/misc/puc/pucdata.c.
1057 device          puc
1058
1059 #
1060 # Network interfaces: `is', `lnc'
1061 #
1062 # lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 & Am79C960)
1063 # sbsh: Granch SBNI16 SHDSL modem PCI adapters
1064 # vmx: VMware VMXNET3 Ethernet (BSD open source)
1065 # wi: Lucent WaveLAN/IEEE 802.11 PCMCIA adapters. Note: this supports both
1066 #     the PCMCIA and ISA cards: the ISA card is really a PCMCIA to ISA
1067 #     bridge with a PCMCIA adapter plugged into it.
1068 # xe: Xircom/Intel EtherExpress Pro100/16 PC Card ethernet controller.
1069 #
1070 device lnc
1071 device sln
1072 device sn
1073
1074 # Wlan support is mandatory for some wireless LAN devices.
1075 options         IEEE80211_DEBUG         #enable debugging msgs
1076 options         IEEE80211_SUPPORT_MESH  #enable 802.11s D3.0 support
1077 options         IEEE80211_SUPPORT_TDMA  #enable TDMA support
1078 device          wlan            # 802.11 support
1079 device          wlan_acl        # 802.11 MAC-based access control for AP
1080 device          wlan_ccmp       # 802.11 CCMP support
1081 device          wlan_tkip       # 802.11 TKIP support
1082 device          wlan_wep        # 802.11 WEP support
1083 device          wlan_xauth      # 802.11 WPA or 802.1x authentication for AP
1084 device          wlan_amrr       # 802.11 AMRR TX rate control algorithm
1085 device          ath             # Atheros AR521x
1086 options         AH_AR5416_INTERRUPT_MITIGATION
1087 options         AH_ASSERT
1088 options         AH_DEBUG
1089 options         AH_INTERRUPT_DEBUGGING
1090 options         AH_MAXCHAN=96
1091 options         AH_NEED_DESC_SWAP
1092 options         AH_PRIVATE_DIAG
1093 options         AH_RXCFG_SDMAMW_4BYTES
1094 options         AH_SUPPORT_AR5416
1095 options         AH_SUPPORT_AR9130
1096 options         AH_SUPPORT_AR9330
1097 options         AH_SUPPORT_AR9340
1098 options         AH_USE_INIPDGAIN
1099 device          ath_hal         # Atheros Hardware Access Layer
1100 #device         ath_rate_amrr   # Atheros AMRR TX rate control algorithm
1101 #device         ath_rate_onoe   # Atheros Onoe TX rate control algorithm
1102 device          ath_rate_sample # Atheros Sample TX rate control algorithm
1103 options         ATH_DEBUG       # turn on debugging output (see hw.ath.debug)
1104 options         ATH_DIAGAPI     # diagnostic interface to the HAL
1105 options         ATH_ENABLE_DFS
1106 options         ATH_KTR_INTR_DEBUG
1107 device          siba_bwn        # Sonic Inc. Silicon Backplane needed for bwn
1108 options         SIBA_DEBUG      # turn on debugging output
1109 device          bwn             # Broadcom BCM43xx NICs using v4 firmware
1110 options         BWN_DEBUG       # turn on debugging output
1111 options         BWN_RXRING_SLOTS=128    # number of RX slots to allocate
1112 options         BWN_TXRING_SLOTS=128    # number of TX slots to allocate
1113 device          iwi             # Intel PRO/Wireless 2200BG/2915ABG
1114 device          iwm             # Intel Dual Band Wireless AC 316x/726x/826x
1115 options         IWM_DEBUG       # turn on debugging output
1116 device          iwn             # Intel WiFi Link 4965/1000/5000/5150/5300/6000/6050
1117 options         IWN_DEBUG       # turn on debugging output
1118 device          wi              # WaveLAN/IEEE, PRISM-II, Spectrum24 802.11DS
1119 device          xe              # Xircom PCMCIA
1120 device          ral             # Ralink Technology 802.11 wireless NIC
1121 device          wpi
1122 options         WPI_DEBUG       # turn on debugging output
1123
1124 # IEEE 802.11 adapter firmware modules
1125
1126 # iwifw:        Intel PRO/Wireless 2200BG/2225BG/2915ABG firmware
1127 # iwmfw         Intel Dual Band Wireless AC 3160/3165/3168/7260/7265/8260/8265
1128 # iwnfw:        Intel WiFi Link 4965/1000/5000/5150/5300/6000/6050
1129 # ralfw:        Ralink Technology RT25xx and RT26xx firmware
1130 # wpifw:        Intel 3945ABG Wireless LAN Controller firmware
1131
1132 device          iwifw
1133 device          iwmfw
1134 device          iwnfw
1135 device          ralfw
1136 device          wpifw
1137
1138 # Bluetooth Protocols
1139 device          bluetooth
1140
1141 # Sound drivers
1142 #
1143
1144 # Basic sound card support:
1145 device          sound
1146 # For PCI sound cards:
1147 device          "snd_als4000"
1148 device          "snd_atiixp"
1149 device          "snd_cmi"
1150 device          "snd_cs4281"
1151 device          "snd_emu10k1"
1152 device          "snd_emu10kx"
1153 device          "snd_envy24"
1154 device          "snd_envy24ht"
1155 device          "snd_es137x"
1156 device          "snd_fm801"
1157 device          "snd_hda"
1158 device          "snd_hdspe"
1159 device          "snd_ich"
1160 device          "snd_maestro"
1161 device          "snd_neomagic"
1162 device          "snd_solo"
1163 device          "snd_spicds"
1164 device          "snd_t4dwave"
1165 device          "snd_via8233"
1166 device          "snd_via82c686"
1167 device          "snd_vibes"
1168 # USB
1169 device          "snd_uaudio"
1170
1171 #
1172 # Following options are intended for debugging/testing purposes:
1173 #
1174 # SND_DEBUG                    Enable extra debugging code that includes
1175 #                              sanity checking and possible increase of
1176 #                              verbosity.
1177 #
1178 # SND_DIAGNOSTIC               Similar in a spirit of INVARIANTS/DIAGNOSTIC,
1179 #                              zero tolerance against inconsistencies.
1180 #
1181 # SND_FEEDER_MULTIFORMAT       By default, only 16/32 bit feeders are compiled
1182 #                              in. This options enable most feeder converters
1183 #                              except for 8bit. WARNING: May bloat the kernel.
1184 #
1185 # SND_FEEDER_FULL_MULTIFORMAT  Ditto, but includes 8bit feeders as well.
1186 #
1187 # SND_FEEDER_RATE_HP           (feeder_rate) High precision 64bit arithmetic
1188 #                              as much as possible (the default trying to
1189 #                              avoid it). Possible slowdown.
1190 #
1191 # SND_OLDSTEREO                Only 2 channels are allowed, effectively
1192 #                              disabling multichannel processing.
1193 #
1194 options         SND_DEBUG
1195 #options                SND_DIAGNOSTIC
1196 options         SND_FEEDER_MULTIFORMAT
1197 options         SND_FEEDER_FULL_MULTIFORMAT
1198 options         SND_FEEDER_RATE_HP
1199 options         SND_OLDSTEREO
1200
1201 #
1202 # Miscellaneous hardware:
1203 #
1204 # bktr: Brooktree bt848/848a/849a/878/879 video capture and TV Tuner board
1205 # coremctl: Intel Core/E3 memory controller (required by ecc(4) and memtemp(4))
1206 # dimm: Location inforamtion (required by ecc(4) and memtemp(4))
1207 # ecc: ECC memory controller
1208 # ipmi: Intelligent Platform Management Interface
1209 # joy: joystick
1210 # nmdm: nullmodem terminal driver (see nmdm(4))
1211 # tpm: Trusted Platform Module
1212
1213 # Notes on the Specialix SI/XIO driver:
1214 #  **This is NOT a Specialix supported Driver!**
1215 #  The host card is memory, not IO mapped.
1216 #  The Rev 1 host cards use a 64K chunk, on a 32K boundary.
1217 #  The Rev 2 host cards use a 32K chunk, on a 32K boundary.
1218 #  The cards can use an IRQ of 11, 12 or 15.
1219
1220 device          coremctl
1221 device          dimm
1222 device          ecc
1223 device          joy0    at isa? port IO_GAME
1224 # nullmodem terminal driver
1225 device          nmdm
1226 device          tpm
1227 device          ipmi
1228
1229 # The adw driver will attempt to use memory mapped I/O for all PCI
1230 # controllers that have it configured only if this option is set.
1231 options         ADW_ALLOW_MEMIO
1232
1233 #
1234 # PCI devices & PCI options:
1235 #
1236 # The main PCI bus device is `pci'.  It provides auto-detection and
1237 # configuration support for all devices on the PCI bus, using either
1238 # configuration mode defined in the PCI specification.
1239
1240 device          pci
1241
1242 # AGP GART support
1243 #
1244 device          agp
1245
1246 #
1247 # AGP debugging.
1248 #
1249 options                AGP_DEBUG
1250
1251 # The `amd' device provides support for the AMD 53C974 SCSI host
1252 # adapter chip as found on devices such as the Tekram DC-390(T).
1253 #
1254 # The `bge' device provides support for gigabit ethernet adapters
1255 # based on the Broadcom BCM570x family of controllers, including the
1256 # 3Com 3c996-T, the Netgear GA302T, the SysKonnect SK-9D21 and SK-9D41,
1257 # and the embedded gigE NICs on Dell PowerEdge 2550 servers.
1258 #
1259 # The `ncr' device provides support for the NCR 53C810 and 53C825
1260 # self-contained SCSI host adapters.
1261 #
1262 # The `isp' device provides support for the Qlogic ISP 1020, 1040
1263 # nd 1040B PCI SCSI host adapters, ISP 1240 Dual Ultra SCSI,
1264 # ISP 1080 and 1280 (Dual) Ultra2, ISP 12160 Ultra3 SCSI, as well as
1265 # the Qlogic ISP 2100 and ISP 2200 Fibre Channel Host Adapters.
1266 #
1267 # The `dc' device provides support for PCI fast ethernet adapters
1268 # based on the DEC/Intel 21143 and various workalikes including:
1269 # the ADMtek AL981 Comet and AN985 Centaur, the ASIX Electronics
1270 # AX88140A and AX88141, the Davicom DM9100 and DM9102, the Lite-On
1271 # 82c168 and 82c169 PNIC, the Lite-On/Macronix LC82C115 PNIC II
1272 # and the Macronix 98713/98713A/98715/98715A/98725 PMAC. This driver
1273 # replaces the old al, ax, dm, pn and mx drivers.  List of brands:
1274 # Digital DE500-BA, Kingston KNE100TX, D-Link DFE-570TX, SOHOware SFA110,
1275 # SVEC PN102-TX, CNet Pro110B, 120A, and 120B, Compex RL100-TX,
1276 # LinkSys LNE100TX, LNE100TX V2.0, Jaton XpressNet, Alfa Inc GFC2204,
1277 # KNE110TX.
1278 #
1279 # The `de' device provides support for the Digital Equipment DC21040
1280 # self-contained Ethernet adapter.
1281 #
1282 # The `em' device provides support for the Intel Pro/1000 Family of Gigabit
1283 # adapters (82542, 82543, 82544, 82540).
1284 #
1285 # The `et' device provides support for the Agere ET1310 10/100/1000 PCIe
1286 # adapters.
1287 #
1288 # The `fxp' device provides support for the Intel EtherExpress Pro/100B
1289 # PCI Fast Ethernet adapters.
1290 #
1291 # The 'lge' device provides support for PCI gigabit ethernet adapters
1292 # based on the Level 1 LXT1001 NetCellerator chipset. This includes the
1293 # D-Link DGE-500SX, SMC TigerCard 1000 (SMC9462SX), and some Addtron cards.
1294 #
1295 # The 'my' device provides support for the Myson MTD80X and MTD89X PCI
1296 # Fast Ethernet adapters.
1297 #
1298 # The 'nge' device provides support for PCI gigabit ethernet adapters
1299 # based on the National Semiconductor DP83820 and DP83821 chipset. This
1300 # includes the SMC EZ Card 1000 (SMC9462TX), D-Link DGE-500T, Asante
1301 # FriendlyNet GigaNIX 1000TA and 1000TPC, the Addtron AEG320T, the
1302 # LinkSys EG1032 and EG1064, the Surecom EP-320G-TX and the Netgear GA622T.
1303 #
1304 # The 'oce' device provides support for Emulex 10 Gbit adapters
1305 # (OneConnect Ethernet).
1306 #
1307 # The 'pcn' device provides support for PCI fast ethernet adapters based
1308 # on the AMD Am79c97x chipsets, including the PCnet/FAST, PCnet/FAST+,
1309 # PCnet/PRO and PCnet/Home. These were previously handled by the lnc
1310 # driver (and still will be if you leave this driver out of the kernel).
1311 #
1312 # Te 're' device provides support for PCI GigaBit ethernet adapters based
1313 # on the RealTek 8169 chipset. It also supports the 8139C+ and is the
1314 # preferred driver for that chip.
1315 #
1316 # The 'rl' device provides support for PCI fast ethernet adapters based
1317 # on the RealTek 8129/8139 chipset. Note that the RealTek driver defaults
1318 # to using programmed I/O to do register accesses because memory mapped
1319 # mode seems to cause severe lockups on SMP hardware. This driver also
1320 # supports the Accton EN1207D `Cheetah' adapter, which uses a chip called
1321 # the MPX 5030/5038, which is either a RealTek in disguise or a RealTek
1322 # workalike.  Note that the D-Link DFE-530TX+ uses the RealTek chipset
1323 # and is supported by this driver, not the 'vr' driver.
1324 #
1325 # The 'sf' device provides support for Adaptec Duralink PCI fast
1326 # ethernet adapters based on the Adaptec AIC-6915 "starfire" controller.
1327 # This includes dual and quad port cards, as well as one 100baseFX card.
1328 # Most of these are 64-bit PCI devices, except for one single port
1329 # card which is 32-bit.
1330 #
1331 # The 'ste' device provides support for adapters based on the Sundance
1332 # Technologies ST201 PCI fast ethernet controller. This includes the
1333 # D-Link DFE-550TX.
1334 #
1335 # The 'sis' device provides support for adapters based on the Silicon
1336 # Integrated Systems SiS 900 and SiS 7016 PCI fast ethernet controller
1337 # chips.
1338 #
1339 # The 'sk' device provides support for the SysKonnect SK-984x series
1340 # PCI gigabit ethernet NICs. This includes the SK-9841 and SK-9842
1341 # single port cards (single mode and multimode fiber) and the
1342 # SK-9843 and SK-9844 dual port cards (also single mode and multimode).
1343 # The driver will autodetect the number of ports on the card and
1344 # attach each one as a separate network interface.
1345 #
1346 # The 'ti' device provides support for PCI gigabit ethernet NICs based
1347 # on the Alteon Networks Tigon 1 and Tigon 2 chipsets. This includes the
1348 # Alteon AceNIC, the 3Com 3c985, the Netgear GA620 and various others.
1349 # Note that you will probably want to bump up NMBCLUSTERS a lot to use
1350 # this driver.
1351 #
1352 # The 'tl' device provides support for the Texas Instruments TNETE100
1353 # series 'ThunderLAN' cards and integrated ethernet controllers. This
1354 # includes several Compaq Netelligent 10/100 cards and the built-in
1355 # ethernet controllers in several Compaq Prosignia, Proliant and
1356 # Deskpro systems. It also supports several Olicom 10Mbps and 10/100
1357 # boards.
1358 #
1359 # The `tx' device provides support for the SMC 9432 TX, BTX and FTX cards.
1360 #
1361 # The `txp' device provides support for the 3Com 3cR990 "Typhoon"
1362 # 10/100 adapters.
1363 #
1364 # The `vr' device provides support for various fast ethernet adapters
1365 # based on the VIA Technologies VT3043 `Rhine I' and VT86C100A `Rhine II'
1366 # chips, including the D-Link DFE530TX (see 'rl' for DFE530TX+), the Hawking
1367 # Technologies PN102TX, and the AOpen/Acer ALN-320.
1368 #
1369 # The `wb' device provides support for various fast ethernet adapters
1370 # based on the Winbond W89C840F chip. Note: this is not the same as
1371 # the Winbond W89C940F, which is an NE2000 clone.
1372 #
1373 # The `xl' device provides support for the 3Com 3c900, 3c905 and
1374 # 3c905B (Fast) Etherlink XL cards and integrated controllers. This
1375 # includes the integrated 3c905B-TX chips in certain Dell Optiplex and
1376 # Dell Precision desktop machines and the integrated 3c905-TX chips
1377 # in Dell Latitude laptop docking stations.
1378 #
1379 # The 'bktr' device is a PCI video capture device using the Brooktree
1380 # bt848/bt848a/bt849a/bt878/bt879 chipset. When used with a TV Tuner it forms a
1381 # TV card, eg Miro PC/TV, Hauppauge WinCast/TV WinTV, VideoLogic Captivator,
1382 # Intel Smart Video III, AverMedia, IMS Turbo, FlyVideo.
1383 #
1384 # options       OVERRIDE_CARD=xxx
1385 # options       OVERRIDE_TUNER=xxx
1386 # options       OVERRIDE_MSP=1
1387 # options       OVERRIDE_DBX=1
1388 # These options can be used to override the auto detection
1389 # The current values for xxx are found in src/sys/dev/video/bktr/bktr_card.h
1390 # Using sysctl(8) run-time overrides on a per-card basis can be made
1391 #
1392 # options       BKTR_SYSTEM_DEFAULT=BROOKTREE_PAL
1393 # or
1394 # options       BKTR_SYSTEM_DEFAULT=BROOKTREE_NTSC
1395 # Specifies the default video capture mode.
1396 # This is required for Dual Crystal (28&35Mhz) boards where PAL is used
1397 # to prevent hangs during initialisation.  eg VideoLogic Captivator PCI.
1398 #
1399 # options       BKTR_USE_PLL
1400 # PAL or SECAM users who have a 28Mhz crystal (and no 35Mhz crystal)
1401 # must enable PLL mode with this option. eg some new Bt878 cards.
1402 #
1403 # options       BKTR_GPIO_ACCESS
1404 # This enable IOCTLs which give user level access to the GPIO port.
1405 #
1406 # options       BKTR_NO_MSP_RESET
1407 # Prevents the MSP34xx reset. Good if you initialise the MSP in another OS first
1408 #
1409 # options       BKTR_430_FX_MODE
1410 # Switch Bt878/879 cards into Intel 430FX chipset compatibility mode.
1411 #
1412 # options       BKTR_SIS_VIA_MODE
1413 # Switch Bt878/879 cards into SIS/VIA chipset compatibility mode which is
1414 # needed for some old SiS and VIA chipset motherboards.
1415 # This also allows Bt878/879 chips to work on old OPTi (<1997) chipset
1416 # motherboards and motherboards with bad or incomplete PCI 2.1 support.
1417 # As a rough guess, old = before 1998
1418 #
1419 # options       BKTR_NEW_MSP34XX_DRIVER
1420 # Use new, more complete initialization scheme for the msp34* soundchip.
1421 # Should fix stereo autodetection if the old driver does only output
1422 # mono sound.
1423 #
1424 # options       BKTR_OVERRIDE_CARD=xxx
1425 # options       BKTR_OVERRIDE_DBX=xxx
1426 # options       BKTR_OVERRIDE_MSP=xxx
1427 # options       BKTR_OVERRIDE_TUNER=xxx
1428 # These options can be used to select a specific device, regardless of
1429 # the autodetection and i2c device checks (see comments in bktr_card.c).
1430 #
1431 device          amd             # AMD 53C974 (Tekram DC-390(T))
1432 device          isp             # Qlogic family
1433 device          ispfw           # Firmware for QLogic HBAs
1434 device          mpr             # LSI-Logic MPT-Fusion 3
1435 device          mps             # LSI-Logic MPT-Fusion 2
1436 device          mpt             # LSI '909 FC adapters
1437 device          ncr             # NCR/Symbios Logic
1438 device          sym             # NCR/Symbios Logic (newer chipsets)
1439 device          trm             # Tekram DC395U/UW/F and DC315U
1440 #
1441 # Options for ISP
1442 #
1443 #       ISP_TARGET_MODE         -       enable target mode operation
1444 #options        ISP_TARGET_MODE=1
1445
1446 # Options used in dev/disk/sym/ (Symbios SCSI driver).
1447 #options        SYM_SETUP_LP_PROBE_MAP  #-Low Priority Probe Map (bits)
1448                                         # Allows the ncr to take precedence
1449                                         # 1 (1<<0) -> 810a, 860
1450                                         # 2 (1<<1) -> 825a, 875, 885, 895
1451                                         # 4 (1<<2) -> 895a, 896, 1510d
1452 #options        SYM_SETUP_SCSI_DIFF     #-HVD support for 825a, 875, 885
1453                                         # disabled:0 (default), enabled:1
1454 #options        SYM_SETUP_PCI_PARITY    #-PCI parity checking
1455                                         # disabled:0, enabled:1 (default)
1456 #options        SYM_SETUP_MAX_LUN       #-Number of LUNs supported
1457                                         # default:8, range:[1..64]
1458
1459
1460 # MII bus support is required for some PCI 10/100 ethernet NICs,
1461 # namely those which use MII-compliant transceivers or implement
1462 # transceiver control interfaces that operate like an MII. Adding
1463 # "device miibus0" to the kernel config pulls in support for
1464 # the generic miibus API and all of the PHY drivers, including a
1465 # generic one for PHYs that aren't specifically handled by an
1466 # individual driver.
1467 device          miibus
1468
1469 # PCI Ethernet NICs that use the common MII bus controller code.
1470 device          ae              # Attansic/Atheros L2 Fast Ethernet
1471 device          alc             # Atheros AR8131/AR8132
1472 device          ale             # Atheros AR8121/AR8113/AR8114
1473 device          age             # Attansic/Atheros L1 Gigabit Ethernet
1474 device          bce             # Broadcom NetXtreme II Gigabit Ethernet
1475 device          bfe             # Broadcom BCM440x 10/100 Ethernet
1476 device          bnx             # Broadcom NetXtreme 5718/57785 Gigabit Ethernet
1477 device          dc              # DEC/Intel 21143 and various workalikes
1478 device          fxp             # Intel EtherExpress PRO/100B (82557, 82558)
1479 device          my              # Myson Fast Ethernet (MTD80X, MTD89X)
1480 device          pcn             # AMD Am79C97x PCI 10/100 NICs
1481 device          re              # RealTek 8139C+/8169
1482 device          rl              # RealTek 8129/8139
1483 device          sbsh            # Granch SBNI16 SHDSL modem
1484 device          sf              # Adaptec AIC-6915 (``Starfire'')
1485 device          sis             # Silicon Integrated Systems SiS 900/SiS 7016
1486 device          ste             # Sundance ST201 (D-Link DFE-550TX)
1487 device          tl              # Texas Instruments ThunderLAN
1488 device          tx              # SMC EtherPower II (83c17x ``EPIC'')
1489 device          vge             # VIA 612x GigE
1490 device          vr              # VIA Rhine, Rhine II
1491 device          wb              # Winbond W89C840F
1492 device          xl              # 3Com 3c90x (``Boomerang'', ``Cyclone'')
1493
1494 # PCI Ethernet NICs.
1495 device          de              # DEC/Intel DC21x4x (``Tulip'')
1496 device          txp             # 3Com 3cR990 (``Typhoon'')
1497
1498 # Gigabit Ethernet NICs.
1499 device          bge             # Broadcom BCM570x (``Tigon III'')
1500 device          em              # Intel Pro/1000 (8254x,8257x)
1501                                 # Requires ig_hal
1502 device          emx             # Intel Pro/1000 (8257{1,2,3,4})
1503                                 # Requires ig_hal
1504 device          igb             # Intel Pro/1000 (82575, 82576, 82580, i350)
1505                                 # Requires ig_hal
1506 device          ig_hal          # Intel Pro/1000 hardware abstraction layer
1507 device          ix              # Intel PRO/10GbE PCIE Ethernet Family
1508 device          et              # Agere ET1310 10/100/1000 Ethernet
1509 device          lge             # Level 1 LXT1001 (``Mercury'')
1510 device          mxge            # Myricom Myri-10G 10GbE NIC
1511 device          mxgefw          # Firmware for Myricom Myri-10G 10GbE NIC
1512 device          nfe             # nVidia nForce2/3 MCP04/51/55 CK804
1513 device          nge             # NatSemi DP83820 and DP83821
1514 device          oce             # Emulex 10 GbE (OneConnect Ethernet)
1515 device          sk              # SysKonnect GEnesis, LinkSys EG1023, D-Link
1516 device          ti              # Alteon (``Tigon I'', ``Tigon II'')
1517 device          stge            # Sundance/Tamarack TC9021 Gigabit Ethernet
1518 device          msk             # Marvell/SysKonnect Yukon II Gigabit Ethernet
1519 device          jme             # JMicron Gigabit/Fast Ethernet
1520
1521 # Brooktree driver has been ported to the new I2C framework. Thus,
1522 # you'll need to have the following 3 lines in the kernel config.
1523 #     device smbus
1524 #     device iicbus
1525 #     device iicbb
1526 # The iic and smb devices are only needed if you want to control other
1527 # I2C slaves connected to the external connector of some cards.
1528 #
1529 device          bktr
1530 options         BKTR_NEW_MSP34XX_DRIVER
1531
1532 # WinTV PVR-250/350 driver
1533 device          cxm
1534
1535 #
1536 # PCCARD/PCMCIA
1537 #
1538 # pccard: pccard slots
1539 # cardbus/cbb: cardbus bridge
1540 device          pccard
1541 device          cardbus
1542 device          cbb
1543
1544 #
1545 # MMC/SD
1546 #
1547 # mmc           MMC/SD bus
1548 # mmcsd         MMC/SD memory card
1549 # sdhci         Generic PCI SD Host Controller
1550 #
1551 device          mmc
1552 device          mmcsd
1553 device          sdhci
1554
1555 #
1556 # SMB bus
1557 #
1558 # System Management Bus support is provided by the 'smbus' device.
1559 # Access to the SMBus device is via the 'smb' device (/dev/smb*),
1560 # which is a child of the 'smbus' device.
1561 #
1562 # Supported devices:
1563 # smb           standard io through /dev/smb*
1564 #
1565 # ACPI support:
1566 # smbacpi       support for ACPI I2cSerialBus resources
1567 #
1568 # Supported SMB interfaces:
1569 # iicsmb        I2C to SMB bridge with any iicbus interface
1570 # bktr          brooktree848 I2C hardware interface
1571 # intpm         Intel PIIX4 (82371AB, 82443MX) Power Management Unit
1572 # alpm          Acer Aladdin-IV/V/Pro2 Power Management Unit
1573 # ichiic        Intel generation 4 I2C controller
1574 # ichsmb        Intel ICH SMBus controller chips (82801AA, 82801AB, 82801BA)
1575 # viapm         VIA VT82C586B,596,686A and VT8233 SMBus controllers
1576 # amdpm         AMD 756 Power Management Unit
1577 # amdsmb        AMD 8111 SMBus 2.0 Controller
1578 #
1579 device          smbus           # Bus support, required for smb below.
1580
1581 device          intpm
1582 device          alpm
1583 device          ichiic
1584 device          ichsmb
1585 device          viapm
1586 device          amdpm
1587 device          amdsmb
1588
1589 device          smb
1590
1591 device          smbacpi
1592
1593 #
1594 # I2C Bus
1595 #
1596 # Philips i2c bus support is provided by the `iicbus' device.
1597 #
1598 # Supported devices:
1599 # ic    i2c network interface
1600 # iic   i2c standard io
1601 # iicsmb i2c to smb bridge. Allow i2c i/o with smb commands.
1602 #
1603 # Supported interfaces:
1604 # pcf   Philips PCF8584 ISA-bus controller
1605 # bktr  brooktree848 I2C software interface
1606 #
1607 # Other:
1608 # iicbb generic I2C bit-banging code (needed by lpbb, bktr)
1609 #
1610 device          iicbus          # Bus support, required for ic/iic/iicsmb below.
1611 device          iicbb
1612
1613 device          ic
1614 device          iic
1615 device          iicsmb          # smb over i2c bridge
1616
1617 device          pcf0    at isa? port 0x320 irq 5
1618
1619 # Intel performance-energy bias
1620 device          perfbias
1621
1622 # Intel software controlled clock modulation
1623 device          clockmod
1624
1625 # Intel Sandy Bridge and newer CPUs power usage estimation
1626 device          corepower
1627
1628 # Intel Core and newer CPUs on-die digital thermal sensor support
1629 device          coretemp
1630
1631 # Memory thermal sensor
1632 device          memtemp
1633
1634 # CPU control pseudo-device. Provides access to MSRs, CPUID info and
1635 # microcode update feature.
1636 device          cpuctl
1637
1638 # Effective CPU frequency interface via APERF/MPERF MSRs
1639 device          aperf
1640
1641 # AMD Family 0Fh, 10h and 11h temperature sensors
1642 device          kate
1643 device          km
1644
1645 # ThinkPad Active Protection System accelerometer
1646 device          aps0    at isa? port 0x1600
1647
1648 # HW monitoring devices lm(4), it(4) and nsclpcsio.
1649 device          lm0     at isa? port 0x290
1650 device          it0     at isa? port 0x290
1651 device          it1     at isa? port 0xc00
1652 device          it2     at isa? port 0xd00
1653 device          it3     at isa? port 0x228
1654 device          nsclpcsio0 at isa? port 0x2e
1655 device          nsclpcsio1 at isa? port 0x4e
1656 device          wbsio0  at isa? port 0x2e
1657 device          wbsio1  at isa? port 0x4e
1658 device          uguru0  at isa? port 0xe0       # ABIT uGuru
1659
1660 # EFI Runtime Services support (not functional yet).
1661 options         EFIRT
1662
1663 # Parallel-Port Bus
1664 #
1665 # Parallel port bus support is provided by the `ppbus' device.
1666 # Multiple devices may be attached to the parallel port, devices
1667 # are automatically probed and attached when found.
1668 #
1669 # Supported devices:
1670 # vpo   Iomega Zip Drive
1671 #       Requires SCSI disk support ('scbus' and 'da'); the best
1672 #       performance is achieved with ports in EPP 1.9 mode.
1673 # lpt   Parallel Printer
1674 # plip  Parallel network interface
1675 # ppi   General-purpose I/O ("Geek Port") + IEEE1284 I/O
1676 # pps   Pulse per second Timing Interface
1677 # lpbb  Philips official parallel port I2C bit-banging interface
1678 #
1679 # Supported interfaces:
1680 # ppc   ISA-bus parallel port interfaces.
1681 #
1682
1683 options         PPC_PROBE_CHIPSET # Enable chipset specific detection
1684                                   # (see flags in ppc(4))
1685 options         DEBUG_1284      # IEEE1284 signaling protocol debug
1686 options         PERIPH_1284     # Makes your computer act as a IEEE1284
1687                                 # compliant peripheral
1688 options         DONTPROBE_1284  # Avoid boot detection of PnP parallel devices
1689 options         VP0_DEBUG       # ZIP/ZIP+ debug
1690 options         LPT_DEBUG       # Printer driver debug
1691 options         PPC_DEBUG=2     # Parallel chipset level debug
1692 options         PLIP_DEBUG      # Parallel network IP interface debug
1693 options         PCFCLOCK_VERBOSE         # Verbose pcfclock driver
1694 options         PCFCLOCK_MAX_RETRIES=5   # Maximum read tries (default 10)
1695
1696 device          ppc0    at isa? irq 7
1697 device          ppbus
1698 device          vpo
1699 device          lpt
1700 device          plip
1701 device          ppi
1702 device          pps
1703 device          lpbb
1704 device          pcfclock
1705
1706 # Kernel BOOTP support
1707
1708 options         BOOTP           # Use BOOTP to obtain IP address/hostname
1709 options         BOOTP_NFSROOT   # NFS mount root filesystem using BOOTP info
1710 options         BOOTP_COMPAT    # Workaround for broken bootp daemons.
1711 options         BOOTP_WIRED_TO=fxp0 # Use interface fxp0 for BOOTP
1712
1713 #
1714 # Set the number of PV entries per process.  Increasing this can
1715 # stop panics related to heavy use of shared memory. However, that can
1716 # (combined with large amounts of physical memory) cause panics at
1717 # boot time due the kernel running out of VM space.
1718 #
1719 # If you're tweaking this, you might also want to increase the sysctls
1720 # "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
1721 #
1722 # The value below is the one more than the default.
1723 #
1724 options         PMAP_SHPGPERPROC=201
1725
1726 #
1727 # Disable swapping. This option removes all code which actually performs
1728 # swapping, so it's not possible to turn it back on at run-time.
1729 #
1730 # This is sometimes usable for systems which don't have any swap space
1731 # (see also sysctls "vm.defer_swapspace_pageouts" and
1732 # "vm.disable_swapspace_pageouts")
1733 #
1734 #options        NO_SWAPPING
1735
1736 # Set the size of the buffer cache KVM reservation, in buffers.  This is
1737 # scaled by approximately 16384 bytes.  The system will auto-size the buffer
1738 # cache if this option is not specified.
1739 #
1740 options         NBUF=512
1741
1742 # Set the size of the mbuf KVM reservation, in clusters.  This is scaled
1743 # by approximately 2048 bytes.  The system will auto-size the mbuf area
1744 # to (512 + maxusers*16) if this option is not specified.
1745 # maxusers is in turn computed at boot time depending on available memory
1746 # or set to the value specified by "options MAXUSERS=x" (x=0 means
1747 # autoscaling).
1748 # So, to take advantage of autoscaling, you have to remove both
1749 # NMBCLUSTERS and MAXUSERS (and NMBUFS) from your kernel config.
1750 #
1751 options         NMBCLUSTERS=1024
1752
1753 # Set the number of mbufs available in the system. Each mbuf
1754 # consumes 256 bytes. The system will autosize this (to 4 times
1755 # the number of NMBCLUSTERS, depending on other constraints)
1756 # if this option is not specified.
1757 #
1758 options         NMBUFS=4096
1759
1760 # Tune the buffer cache maximum KVA reservation, in bytes.  The maximum is
1761 # usually capped at 200 MB, effecting machines with > 1GB of ram.  Note
1762 # that the buffer cache only really governs write buffering and disk block
1763 # translations.  The VM page cache is our primary disk cache and is not
1764 # effected by the size of the buffer cache.
1765 #
1766 options         VM_BCACHE_SIZE_MAX="(100*1024*1024)"
1767
1768 # Tune the swap zone KVA reservation, in bytes.  The default is typically
1769 # 70 MB, giving the system the ability to manage a maximum of 28GB worth
1770 # of swapped out data.
1771 #
1772 options         VM_SWZONE_SIZE_MAX="(50*1024*1024)"
1773
1774 #
1775 # Enable extra debugging code for locks.  This stores the filename and
1776 # line of whatever acquired the lock in the lock itself, and change a
1777 # number of function calls to pass around the relevant data.  This is
1778 # not at all useful unless you are debugging lock code.  Also note
1779 # that it is likely to break e.g. fstat(1) unless you recompile your
1780 # userland with -DDEBUG_LOCKS as well.
1781 #
1782 # DEBUG_LOCKS_LATENCY adds a sysctl to add a forced latency loop
1783 # (count to N) in front of any spinlock or gettoken.
1784 #
1785 options         DEBUG_LOCKS
1786 options         DEBUG_LOCKS_LATENCY
1787
1788 # Set the amount of time (in seconds) the system will wait before
1789 # rebooting automatically when a kernel panic occurs.  If set to (-1),
1790 # the system will wait indefinitely until a key is pressed on the
1791 # console.
1792 options         PANIC_REBOOT_WAIT_TIME=16
1793
1794 # Specify a lower limit for the number of swap I/O buffers.
1795 #
1796 #options                NSWBUF_MIN=120
1797
1798 # The 'asr' driver provides support for current DPT/Adaptec SCSI RAID
1799 # controllers (SmartRAID V and VI and later).
1800 # These controllers require the CAM infrastructure.
1801 #
1802 device          asr
1803
1804 # The 'dpt' driver provides support for DPT controllers (http://www.dpt.com/).
1805 # These have hardware RAID-{0,1,5} support, and do multi-initiator I/O.
1806 # The DPT controllers are commonly re-licensed under other brand-names -
1807 # some controllers by Olivetti, Dec, HP, AT&T, SNI, AST, Alphatronic, NEC and
1808 # Compaq are actually DPT controllers.
1809 #
1810 # See src/sys/dev/raid/dpt for debugging and other subtle options.
1811 #   DPT_MEASURE_PERFORMANCE Enables a set of (semi)invasive metrics. Various
1812 #                           instruments are enabled.  The tools in
1813 #                           /usr/sbin/dpt_* assume these to be enabled.
1814 #   DPT_HANDLE_TIMEOUTS     Normally device timeouts are handled by the DPT.
1815 #                           If you ant the driver to handle timeouts, enable
1816 #                           this option.  If your system is very busy, this
1817 #                           option will create more trouble than solve.
1818 #   DPT_TIMEOUT_FACTOR      Used to compute the excessive amount of time to
1819 #                           wait when timing out with the above option.
1820 #  DPT_DEBUG_xxxx           These are controllable from sys/dev/raid/dpt/dpt.h
1821 #  DPT_LOST_IRQ             When enabled, will try, once per second, to catch
1822 #                           any interrupt that got lost.  Seems to help in some
1823 #                           DPT-firmware/Motherboard combinations.  Minimal
1824 #                           cost, great benefit.
1825 #  DPT_RESET_HBA            Make "reset" actually reset the controller
1826 #                           instead of fudging it.  Only enable this if you
1827 #                           are 100% certain you need it.
1828
1829 device          dpt
1830
1831 # DPT options
1832 #!CAM# options  DPT_MEASURE_PERFORMANCE
1833 #!CAM# options  DPT_HANDLE_TIMEOUTS
1834 options         DPT_TIMEOUT_FACTOR=4
1835 options         DPT_LOST_IRQ
1836 options         DPT_RESET_HBA
1837
1838 #
1839 # Compaq "CISS" RAID controllers (SmartRAID 5* series)
1840 # These controllers have a SCSI-like interface, and require the
1841 # CAM infrastructure.
1842 #
1843 device          ciss
1844
1845 #
1846 # Intel Integrated RAID controllers.
1847 # This driver is supported and maintained by
1848 # "Leubner, Achim" <Achim_Leubner@adaptec.com>.
1849 #
1850 device          iir
1851
1852 #
1853 # Mylex AcceleRAID and eXtremeRAID controllers with v6 and later
1854 # firmware.  These controllers have a SCSI-like interface, and require
1855 # the CAM infrastructure.
1856 #
1857 device          mly
1858
1859 # USB support
1860 #
1861
1862 # UHCI controller
1863 device          uhci
1864 # OHCI controller
1865 device          ohci
1866 # EHCI controller
1867 device          ehci
1868 # XHCI controller
1869 device          xhci
1870 # General USB code (mandatory for USB)
1871 device          usb
1872 # Human Interface Device (anything with buttons and dials)
1873 device          uhid
1874 # USB keyboard
1875 device          ukbd
1876 # USB printer
1877 device          ulpt
1878 # USB mass storage (Requires scbus and da)
1879 device          umass
1880 # USB mass storage driver for device-side mode
1881 device          usfs
1882 # USB modem support
1883 device          umodem
1884 # USB mouse
1885 device          ums
1886 # eGalax USB touch screen
1887 device          uep
1888 # Diamond Rio 500 MP3 player
1889 device          urio
1890 # USB com devices
1891 device          "u3g"
1892 device          uark
1893 device          ubsa
1894 device          ubser
1895 device          uchcom
1896 device          ucom
1897 device          ucycom
1898 device          ufoma
1899 device          uftdi
1900 device          ugensa
1901 device          uipaq
1902 device          umcs
1903 device          umct
1904 device          umoscom
1905 device          uplcom
1906 device          uslcom
1907 device          uvisor
1908 device          uvscom
1909
1910 #
1911 # USB ethernet support
1912 device          uether
1913 #
1914 # ADMtek USB ethernet. Supports the LinkSys USB100TX,
1915 # the Billionton USB100, the Melco LU-ATX, the D-Link DSB-650TX
1916 # and the SMC 2202USB. Also works with the ADMtek AN986 Pegasus
1917 # eval board.
1918 device          aue
1919 #
1920 # ASIX Electronics AX88172 USB 2.0 ethernet driver. Used in the
1921 # LinkSys USB200M and various other adapters.
1922 device          axe
1923 #
1924 # ASIX Electronics AX88178A/AX88179 USB 2.0/3.0 gigabit ethernet driver.
1925 device          axge
1926 #
1927 # Devices which communicate using Ethernet over USB, particularly
1928 # Communication Device Class (CDC) Ethernet specification. Supports
1929 # Sharp Zaurus PDAs, some DOCSIS cable modems and so on.
1930 device          cdce
1931 #
1932 # CATC USB-EL1201A USB ethernet. Supports the CATC Netmate
1933 # and Netmate II, and the Belkin F5U111.
1934 device          cue
1935 #
1936 # USB Apple iPhone/iPad tethered Ethernet driver
1937 device          ipheth
1938 #
1939 # Kawasaki LSI ethernet. Supports the LinkSys USB10T,
1940 # Entrega USB-NET-E45, Peracom Ethernet Adapter, the
1941 # 3Com 3c19250, the ADS Technologies USB-10BT, the ATen UC10T,
1942 # the Netgear EA101, the D-Link DSB-650, the SMC 2102USB
1943 # and 2104USB, and the Corega USB-T.
1944 device          kue
1945 #
1946 # Moschip MCS7730/MCS7840 USB to fast ethernet. Supports the Sitecom LN030.
1947 device          mos
1948 #
1949 # Davicom DM9601E USB to fast ethernet. Supports the Corega FEther USB-TXC.
1950 device          udav
1951
1952 # USB wireless NICs, requires wlan_amrr
1953 #
1954 # Ralink Technology RT2501USB/RT2601USB
1955 device          rum
1956 #
1957 # Ralink Technology RT2700U/RT2800U/RT3000U wireless driver
1958 device          run
1959 device          runfw
1960 #
1961 # RNDIS USB ethernet driver
1962 device          urndis
1963 #
1964 # Realtek RTL8188CU/RTL8192CU wireless driver
1965 device          urtwn
1966 device          urtwnfw
1967 options         URTWN_WITHOUT_UCODE
1968
1969 # Fm Radio
1970 #
1971 device          ufm
1972
1973 # Templates for programming USB device side drivers
1974 #
1975 device          usb_template
1976
1977 # debugging options for the USB subsystem
1978 #
1979 options         USB_DEBUG
1980
1981 # options for ukbd:
1982 options         UKBD_DFLT_KEYMAP        # specify the built-in keymap
1983 makeoptions     UKBD_DFLT_KEYMAP=it.iso
1984
1985 # Firewire support
1986 device          firewire        # Firewire bus code
1987 device          sbp             # SCSI over Firewire (Requires scbus and da)
1988 device          fwe             # Ethernet over Firewire (non-standard!)
1989
1990 # dcons support (Dumb Console Device)
1991 device          dcons                   # dumb console driver
1992 device          dcons_crom              # FireWire attachment
1993 options         DCONS_BUF_SIZE=16384    # buffer size
1994 options         DCONS_POLL_HZ=100       # polling rate
1995 options         DCONS_FORCE_CONSOLE=1   # force to be the primary console
1996 options         DCONS_FORCE_GDB=1       # force to be the gdb device
1997
1998 #####################################################################
1999 # crypto subsystem
2000 #
2001 # This is a port of the openbsd crypto framework.  Include this when
2002 # you have a h/w crypto device to accelerate user applications that
2003 # link to openssl.
2004 #
2005 # Drivers are ports from openbsd with some simple enhancements that have
2006 # been fed back to openbsd (and hopefully will be included).
2007
2008 device          crypto          # core crypto support
2009 device          cryptodev       # /dev/crypto for access to h/w
2010
2011 device          rndtest         # FIPS 140-2 entropy tester
2012
2013 device          hifn            # Hifn 7951, 7781, etc.
2014 options         HIFN_DEBUG      # enable debugging support: hw.hifn.debug
2015 #options        HIFN_NO_RNG     # for devices without RNG
2016 options         HIFN_RNDTEST    # enable rndtest support
2017
2018 device          safe            # SafeNet 1141
2019 options         SAFE_DEBUG      # enable debugging support: hw.safe.debug
2020 #options        SAFE_NO_RNG     # for devices without RNG
2021 options         SAFE_RNDTEST    # enable rndtest support
2022
2023 device          ubsec           # Broadcom 5501, 5601, 58xx
2024 options         UBSEC_DEBUG     # enable debugging support: hw.ubsec.debug
2025 #options        UBSEC_NO_RNG    # for devices without RNG
2026 options         UBSEC_RNDTEST   # enable rndtest support
2027
2028 device          aesni           # hardware crypto/RNG for AES-NI
2029 device          padlock         # hardware crypto/RNG for VIA C3/C7/Eden
2030 device          rdrand          # hardware RNG for RdRand
2031
2032 #
2033 # ACPI support using the Intel ACPI Component Architecture reference
2034 # implementation.
2035 #
2036 # ACPI_DEBUG enables the use of the debug.acpi.level and debug.acpi.layer
2037 # kernel environment variables to select initial debugging levels for the
2038 # Intel ACPICA code.
2039
2040 device          acpi
2041 options         ACPI_DEBUG
2042
2043 # ACPI WMI Mapping driver
2044 device          acpi_wmi
2045
2046 # ACPI Asus Extras (LCD backlight/brightness, video output, etc.)
2047 device          acpi_asus
2048
2049 # ACPI Fujitsu Extras (Buttons)
2050 device          acpi_fujitsu
2051
2052 # ACPI extras driver for HP laptops
2053 device          acpi_hp
2054
2055 # ACPI Panasonic Extras (LCD backlight/brightness, video output, etc.)
2056 device          acpi_panasonic
2057
2058 # ACPI pvpanic driver for virtual machines running in Qemu
2059 device          acpi_pvpanic
2060
2061 # ACPI Sony extra (LCD brightness)
2062 device          acpi_sony
2063
2064 # ACPI extras driver for ThinkPad laptops
2065 device          acpi_thinkpad
2066
2067 # ACPI Toshiba Extras (LCD backlight/brightness, video output, etc.)
2068 device          acpi_toshiba
2069
2070 # ACPI Video Extensions (LCD backlight/brightness, video output, etc.)
2071 device          acpi_video
2072
2073 # ACPI Docking Station
2074 device          acpi_dock
2075
2076 device          aibs            # ASUSTeK AI Booster (ACPI ASOC ATK0110)
2077
2078 # DRM options:
2079 # drm:          General DRM code
2080 # i915:         Intel integrated GPUs, starting from the 830M family
2081 # radeon:       ATI/AMD Radeon cards
2082 #
2083 # DRM_DEBUG:    include debug printfs, very slow
2084 #
2085 # DRM requires AGP in the kernel.
2086 #
2087 # Also you'll need to have the following 3 lines in the kernel config.
2088 #       device acpi
2089 #       device iicbus
2090 #       device iicbb
2091
2092 device          drm
2093
2094 # For testing and debugging.
2095 device          "i915"
2096 device          radeon
2097
2098 options         DRM_DEBUG
2099 options         VGA_SWITCHEROO
2100
2101 #
2102 # Misc devices
2103 #
2104 device          cmx             # Omnikey CardMan 4040 smartcard reader
2105 device          amdsbwd         # AMD South Bridge watchdog
2106 device          gpio            # Enable support for the gpio framework
2107 device          ichwd           # Intel ICH watchdog interrupt timer
2108 device          tbridge         # regression testing
2109
2110 #
2111 # Amazon EC2 support
2112 #
2113 device          ena
2114
2115 #
2116 # Hyper-V support
2117 #
2118 device          vmbus
2119
2120 #
2121 # Virtio support
2122 #
2123 device          virtio
2124 device          virtio_blk
2125 device          virtio_random
2126 device          virtio_scsi
2127 device          vtnet
2128
2129 # VMware support
2130 #
2131 device          vmx             # VMware VMXNET3 Ethernet
2132
2133 #
2134 # Gpio support for ACPI based SoC platforms
2135 #
2136 device          gpio_acpi
2137 device          gpio_intel      # GPIO support for Intel SoCs
2138
2139 #
2140 # Embedded system options:
2141 #
2142 # An embedded system might want to run something other than init.
2143 options         INIT_PATH="/sbin/init:/sbin/oinit"
2144
2145 # Debug options
2146 options         BUS_DEBUG       # enable newbus debugging
2147 options         RSS_DEBUG       # enable RSS (Receive Side Scaling) debugging
2148
2149 # Record the program counter of the code interrupted by the statistics
2150 # clock interrupt.  Use pctrack(8) to dump this information.
2151 options         DEBUG_PCTRACK
2152
2153 # evdev interface
2154 device          evdev           # input event device support
2155 options         EVDEV_SUPPORT   # evdev support in legacy drivers
2156 options         EVDEV_DEBUG     # enable event debug messages
2157
2158 # More undocumented options for linting.
2159 # Note that documenting these are not considered an affront.
2160
2161 #options        ACPI_NO_SEMAPHORES
2162 #options        BKTR_ALLOC_PAGES=xxx
2163 options         CAM_DEBUG_DELAY
2164 options         CLUSTERDEBUG
2165 options         DEBUG
2166 options         DEBUG_CRIT_SECTIONS
2167 options         BCE_RSS_DEBUG
2168 options         BCE_TSS_DEBUG
2169 options         BNX_RSS_DEBUG
2170 options         BNX_TSO_DEBUG
2171 options         BNX_TSS_DEBUG
2172 options         EMX_RSS_DEBUG
2173 options         EMX_TSO_DEBUG
2174 options         EMX_TSS_DEBUG
2175 options         JME_RSS_DEBUG
2176 options         IGB_RSS_DEBUG
2177 options         IGB_TSS_DEBUG
2178 options         IGB_MSIX_DEBUG
2179 options         IX_RSS_DEBUG
2180 options         ENABLE_ALART
2181 options         FB_DEBUG=2
2182 options         FB_INSTALL_CDEV
2183 #options        IEEE80211_DEBUG_REFCNT
2184 options         IEEE80211_SUPPORT_SUPERG
2185 options         KBDIO_DEBUG=10
2186 options         KBD_MAXRETRY=4
2187 options         KBD_MAXWAIT=6
2188 options         KBD_RESETDELAY=201
2189 #options        KERN_TIMESTAMP
2190 options         KEY
2191 options         LOCKF_DEBUG
2192 #options        MAXFILES=xxx
2193 options         MBUF_DEBUG
2194 options         NO_LWKT_SPLIT_USERPRI
2195 options         PANIC_DEBUG
2196 options         PMAP_DEBUG
2197 options         PSM_DEBUG=4
2198 options         SCSI_NCR_DEBUG
2199 options         SCSI_NCR_MAX_SYNC=10000
2200 options         SCSI_NCR_MAX_WIDE=1
2201 options         SCSI_NCR_MYADDR=7
2202 options         SLAB_DEBUG
2203 options         SOCKBUF_DEBUG
2204 options         TDMA_BINTVAL_DEFAULT=5
2205 options         TDMA_SLOTCNT_DEFAULT=2
2206 options         TDMA_SLOTLEN_DEFAULT=10*1000
2207 options         TDMA_TXRATE_11A_DEFAULT=2*24
2208 options         TDMA_TXRATE_11B_DEFAULT=2*11
2209 options         TDMA_TXRATE_11G_DEFAULT=2*24
2210 options         TDMA_TXRATE_11NA_DEFAULT="(4|IEEE80211_RATE_MCS)"
2211 options         TDMA_TXRATE_11NG_DEFAULT="(4|IEEE80211_RATE_MCS)"
2212 options         TDMA_TXRATE_HALF_DEFAULT=2*12
2213 options         TDMA_TXRATE_QUARTER_DEFAULT=2*6
2214 options         TDMA_TXRATE_TURBO_DEFAULT=2*24
2215 #options        TIMER_FREQ="((14318182+6)/12)"
2216 options         VFS_BIO_DEBUG
2217 options         VM_PAGE_DEBUG
2218 options         XBONEHACK
2219
2220 options KTR
2221 options KTR_ALL
2222 options KTR_ENTRIES=1024
2223 options KTR_VERBOSE=1
2224 #options KTR_ACPI_EC
2225 #options KTR_CTXSW
2226 #options KTR_DMCRYPT
2227 #options KTR_ETHERNET
2228 #options KTR_HAMMER
2229 #options KTR_IFQ
2230 #options KTR_IF_BGE
2231 #options KTR_IF_EM
2232 #options KTR_IF_EMX
2233 #options KTR_IF_POLL
2234 #options KTR_IF_START
2235 #options KTR_IPIQ
2236 #options KTR_KERNENTRY
2237 #options KTR_MEMORY
2238 #options KTR_SERIALIZER
2239 #options KTR_SOWAKEUP
2240 #options KTR_SPIN_CONTENTION
2241 #options KTR_TESTLOG
2242 #options KTR_TOKENS
2243 #options KTR_TSLEEP
2244 #options KTR_UDP
2245 #options KTR_USCHED_BSD4
2246 #options KTR_USCHED_DFLY
2247
2248 # ALTQ
2249 options         ALTQ            #alternate queueing
2250 options         ALTQ_CBQ        #class based queueing
2251 options         ALTQ_RED        #random early detection
2252 options         ALTQ_RIO        #triple red for diffserv (needs RED)
2253 options         ALTQ_HFSC       #hierarchical fair service curve
2254 options         ALTQ_PRIQ       #priority queue
2255 options         ALTQ_FAIRQ      #fair queue
2256 #options        ALTQ_NOPCC      #don't use processor cycle counter
2257 options         ALTQ_DEBUG      #for debugging
2258 # you might want to set kernel timer to 1kHz if you use CBQ,
2259 # especially with 100baseT
2260 #options        HZ=1000
2261
2262 # WATCHDOG
2263 options         WDOG_DISABLE_ON_PANIC   # Automatically disable watchdogs on panic
2264
2265 # LED
2266 device          led
2267 options         ERROR_LED_ON_PANIC      # If an error led is present, light it up on panic