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