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