xref: /dragonfly/sys/config/LINT64 (revision 99a4aa9d)
1745b8439SSascha Wildner#
2a50a8689SSascha Wildner# LINT64 -- config file for checking all the sources, tries to pull in
3745b8439SSascha Wildner#	as much of the source tree as it can.
4745b8439SSascha Wildner#
5745b8439SSascha Wildner# $FreeBSD: src/sys/i386/conf/LINT,v 1.749.2.144 2003/06/04 17:56:59 sam Exp $
6745b8439SSascha Wildner#
7745b8439SSascha Wildner# See the kernconf(5) manual page for more information on the format of
8745b8439SSascha Wildner# this file.
9745b8439SSascha Wildner#
10745b8439SSascha Wildner# NB: You probably don't want to try running a kernel built from this
11745b8439SSascha Wildner# file.  Instead, you should start from X86_64_GENERIC, and add options
12745b8439SSascha Wildner# from this file as required.
13745b8439SSascha Wildner#
14745b8439SSascha Wildner
15745b8439SSascha Wildner# These directives are mandatory.  The machine directive specifies the
16745b8439SSascha Wildner# platform and the machine_arch directive specifies the cpu architecture.
17745b8439SSascha Wildner#
18745b8439SSascha Wildnerplatform	pc64
19745b8439SSascha Wildnermachine		x86_64
20745b8439SSascha Wildnermachine_arch	x86_64
21745b8439SSascha Wildner
22745b8439SSascha Wildner#
23745b8439SSascha Wildner# This is the ``identification'' of the kernel.  Usually this should
24745b8439SSascha Wildner# be the same as the name of your kernel.
25745b8439SSascha Wildner#
262749c4b7SSascha Wildnerident		LINT64
27745b8439SSascha Wildner
28745b8439SSascha Wildner#
29745b8439SSascha Wildner# The `maxusers' parameter controls the static sizing of a number of
30745b8439SSascha Wildner# internal system tables by a formula defined in subr_param.c.  Setting
31745b8439SSascha Wildner# maxusers to 0 will cause the system to auto-size based on physical
32745b8439SSascha Wildner# memory.
33745b8439SSascha Wildner#
34745b8439SSascha Wildnermaxusers	10
35745b8439SSascha Wildner
36745b8439SSascha Wildner#
37745b8439SSascha Wildner# The `makeoptions' parameter allows variables to be passed to the
38745b8439SSascha Wildner# generated Makefile in the build area.
39745b8439SSascha Wildner#
40745b8439SSascha Wildner# CONF_CFLAGS gives some extra compiler flags that are added to ${CFLAGS}
41745b8439SSascha Wildner# after most other flags.  Here we use it to inhibit use of non-optimal
42745b8439SSascha Wildner# gcc builtin functions (e.g., memcmp).
43745b8439SSascha Wildner#
44745b8439SSascha Wildner# DEBUG happens to be magic.
45745b8439SSascha Wildner# The following is equivalent to 'config -g KERNELNAME' and creates
46745b8439SSascha Wildner# 'kernel.debug' compiled with -g debugging as well as a normal
47745b8439SSascha Wildner# 'kernel'.  Use 'make install.debug' to install the debug kernel
48745b8439SSascha Wildner# but that isn't normally necessary as the debug symbols are not loaded
49745b8439SSascha Wildner# by the kernel and are not useful there anyway.
50745b8439SSascha Wildner#
51745b8439SSascha Wildner# KERNEL can be overridden so that you can change the default name of your
52745b8439SSascha Wildner# kernel.
53745b8439SSascha Wildner#
54745b8439SSascha Wildner# MODULES_OVERRIDE can be used to limit modules built to a specific list.
55745b8439SSascha Wildner#
56745b8439SSascha Wildner# INSTALLSTRIPPED can be set to cause installkernel to install stripped
57745b8439SSascha Wildner# kernels and modules rather than a kernel and modules with debug symbols.
58745b8439SSascha Wildner#
59745b8439SSascha Wildner# INSTALLSTRIPPEDMODULES can be set to allow a full debug kernel to be
60745b8439SSascha Wildner# installed, but to strip the installed modules.
61745b8439SSascha Wildner#
62745b8439SSascha Wildnermakeoptions	CONF_CFLAGS=-fno-builtin  #Don't allow use of memcmp, etc.
63745b8439SSascha Wildner#makeoptions	DEBUG=-g		#Build kernel with gdb(1) debug symbols
64745b8439SSascha Wildner#makeoptions	KERNEL=foo		#Build kernel "foo" and install "/foo"
656737a4ffSSascha Wildner# Only build those parts of the sound system I need.
666737a4ffSSascha Wildner#makeoptions	MODULES_OVERRIDE="sound/snd sound/pcm"
67745b8439SSascha Wildner#makeoptions	INSTALLSTRIPPED=1
68745b8439SSascha Wildner#makeoptions	INSTALLSTRIPPEDMODULES=1
69745b8439SSascha Wildner
70745b8439SSascha Wildner#
71745b8439SSascha Wildner# Certain applications can grow to be larger than the 128M limit
72745b8439SSascha Wildner# that DragonFly initially imposes.  Below are some options to
73745b8439SSascha Wildner# allow that limit to grow to 256MB, and can be increased further
74745b8439SSascha Wildner# with changing the parameters.  MAXDSIZ is the maximum that the
75745b8439SSascha Wildner# limit can be set to, and the DFLDSIZ is the default value for
76745b8439SSascha Wildner# the limit.  MAXSSIZ is the maximum that the stack limit can be
77745b8439SSascha Wildner# set to.  You might want to set the default lower than the max,
78745b8439SSascha Wildner# and explicitly set the maximum with a shell command for processes
79745b8439SSascha Wildner# that regularly exceed the limit like INND.
80745b8439SSascha Wildner#
81745b8439SSascha Wildneroptions 	MAXDSIZ="(256*1024*1024)"
82745b8439SSascha Wildneroptions 	MAXSSIZ="(256*1024*1024)"
83745b8439SSascha Wildneroptions 	DFLDSIZ="(256*1024*1024)"
84745b8439SSascha Wildner
85745b8439SSascha Wildner#
86745b8439SSascha Wildner# BLKDEV_IOSIZE sets the default block size used in user block
87745b8439SSascha Wildner# device I/O.  Note that this value will be overridden by the label
88745b8439SSascha Wildner# when specifying a block device from a label with a non-0
89745b8439SSascha Wildner# partition blocksize.  The default is PAGE_SIZE.
90745b8439SSascha Wildner#
91745b8439SSascha Wildneroptions 	BLKDEV_IOSIZE=8192
92745b8439SSascha Wildner
93745b8439SSascha Wildner# This allows you to actually store this configuration file into
94745b8439SSascha Wildner# the kernel binary itself, where it may be later read by saying:
95745b8439SSascha Wildner#    strings -n 3 /kernel | sed -n 's/^___//p' > MYKERNEL
96745b8439SSascha Wildner#
97745b8439SSascha Wildneroptions 	INCLUDE_CONFIG_FILE     # Include this file in kernel
98745b8439SSascha Wildner
99745b8439SSascha Wildner#
100745b8439SSascha Wildner# The root device and filesystem type can be compiled in;
101745b8439SSascha Wildner# this provides a fallback option if the root device cannot
102745b8439SSascha Wildner# be correctly guessed by the bootstrap code, or an override if
103745b8439SSascha Wildner# the RB_DFLTROOT flag (-r) is specified when booting the kernel.
104745b8439SSascha Wildner#
105745b8439SSascha Wildneroptions 	ROOTDEVNAME=\"ufs:da0s2e\"
106745b8439SSascha Wildner
107745b8439SSascha Wildner#####################################################################
108745b8439SSascha Wildner# CPU OPTIONS
109745b8439SSascha Wildner
110745b8439SSascha Wildnercpu		HAMMER_CPU
111745b8439SSascha Wildner
112745b8439SSascha Wildner#
113745b8439SSascha Wildner# Options for CPU features.
114745b8439SSascha Wildner#
1155cf56a8dSAlex Hornung# CPU_DISABLE_AVX disables AVX instruction set.
1165cf56a8dSAlex Hornung#
1175cf56a8dSAlex Hornungoptions 	CPU_DISABLE_AVX
118ebea24c3SSascha Wildner
119745b8439SSascha Wildner#####################################################################
120745b8439SSascha Wildner# COMPATIBILITY OPTIONS
121745b8439SSascha Wildner
122efba76b4SSascha Wildner# Enable NDIS binary driver support
123efba76b4SSascha Wildneroptions 	NDISAPI
124efba76b4SSascha Wildnerdevice		ndis
125efba76b4SSascha Wildner
126745b8439SSascha Wildner#
127745b8439SSascha Wildner# These three options provide support for System V Interface
128745b8439SSascha Wildner# Definition-style interprocess communication, in the form of shared
129745b8439SSascha Wildner# memory, semaphores, and message queues, respectively.
130745b8439SSascha Wildner#
131745b8439SSascha Wildner# System V shared memory and tunable parameters
132745b8439SSascha Wildneroptions 	SHMMIN=2	# min shared memory segment size (bytes)
133745b8439SSascha Wildneroptions 	SHMMNI=33	# max number of shared memory identifiers
134745b8439SSascha Wildneroptions 	SHMSEG=9	# max shared memory segments per process
135745b8439SSascha Wildner
136745b8439SSascha Wildner# System V semaphores and tunable parameters
137745b8439SSascha Wildneroptions 	SEMMAP=31	# amount of entries in semaphore map
138745b8439SSascha Wildneroptions 	SEMMNI=11	# number of semaphore identifiers in the system
139745b8439SSascha Wildneroptions 	SEMMNS=61	# number of semaphores in the system
140745b8439SSascha Wildneroptions 	SEMMNU=31	# number of undo structures in the system
141745b8439SSascha Wildneroptions 	SEMMSL=61	# max number of semaphores per id
142745b8439SSascha Wildneroptions 	SEMOPM=101	# max number of operations per semop call
143745b8439SSascha Wildneroptions 	SEMUME=11	# max number of undo entries per process
144745b8439SSascha Wildner
145745b8439SSascha Wildner# System V message queues and tunable parameters
146745b8439SSascha Wildneroptions 	MSGMNB=2049	# max characters per message queue
147745b8439SSascha Wildneroptions 	MSGMNI=41	# max number of message queue identifiers
148745b8439SSascha Wildneroptions 	MSGSEG=2049	# max number of message segments in the system
149745b8439SSascha Wildneroptions 	MSGSSZ=16	# size of a message segment MUST be power of 2
150745b8439SSascha Wildneroptions 	MSGTQL=41	# max amount of messages in the system
151745b8439SSascha Wildner
152745b8439SSascha Wildner#####################################################################
153745b8439SSascha Wildner# DEBUGGING OPTIONS
154745b8439SSascha Wildner
155745b8439SSascha Wildner#
156745b8439SSascha Wildner# Enable the kernel debugger.
157745b8439SSascha Wildner#
158745b8439SSascha Wildneroptions 	DDB
159745b8439SSascha Wildner
160745b8439SSascha Wildner#
161745b8439SSascha Wildner# Print a stack trace on kernel panic.
162745b8439SSascha Wildner#
163745b8439SSascha Wildneroptions 	DDB_TRACE
164745b8439SSascha Wildner
165745b8439SSascha Wildner#
166745b8439SSascha Wildner# Don't drop into DDB for a panic. Intended for unattended operation
167745b8439SSascha Wildner# where you may want to drop to DDB from the console, but still want
168745b8439SSascha Wildner# the machine to recover from a panic
169745b8439SSascha Wildner#
170745b8439SSascha Wildneroptions 	DDB_UNATTENDED
171745b8439SSascha Wildner
172745b8439SSascha Wildner#
173745b8439SSascha Wildner# If using GDB remote mode to debug the kernel, there's a non-standard
174745b8439SSascha Wildner# extension to the remote protocol that can be used to use the serial
175745b8439SSascha Wildner# port as both the debugging port and the system console.  It's non-
176745b8439SSascha Wildner# standard and you're on your own if you enable it.  See also the
177745b8439SSascha Wildner# "remotechat" variables in the DragonFly specific version of gdb.
178745b8439SSascha Wildner#
179745b8439SSascha Wildneroptions 	GDB_REMOTE_CHAT
180745b8439SSascha Wildner
181745b8439SSascha Wildner#
182745b8439SSascha Wildner# KTRACE enables the system-call tracing facility ktrace(2).
183745b8439SSascha Wildner#
184745b8439SSascha Wildneroptions 	KTRACE			#kernel tracing
185745b8439SSascha Wildner
186745b8439SSascha Wildner#
187745b8439SSascha Wildner# The INVARIANTS option is used in a number of source files to enable
188745b8439SSascha Wildner# extra sanity checking of internal structures.  This support is not
189745b8439SSascha Wildner# enabled by default because of the extra time it would take to check
190745b8439SSascha Wildner# for these conditions, which can only occur as a result of
191745b8439SSascha Wildner# programming errors.
192745b8439SSascha Wildner#
193745b8439SSascha Wildneroptions 	INVARIANTS
194745b8439SSascha Wildner
195745b8439SSascha Wildner#
196745b8439SSascha Wildner# The DIAGNOSTIC option is used to enable extra debugging information
197745b8439SSascha Wildner# from some parts of the kernel.  As this makes everything more noisy,
198745b8439SSascha Wildner# it is disabled by default.
199745b8439SSascha Wildner#
200745b8439SSascha Wildneroptions 	DIAGNOSTIC
201745b8439SSascha Wildner
202745b8439SSascha Wildner#
203ae12603aSSascha Wildner# SYSCTL_DEBUG enables a 'sysctl' debug tree that can be used to dump the
204ae12603aSSascha Wildner# contents of the registered sysctl nodes on the console.  It is disabled by
205ae12603aSSascha Wildner# default because it generates excessively verbose console output that can
206ae12603aSSascha Wildner# interfere with serial console operation.
207ae12603aSSascha Wildner#
208ae12603aSSascha Wildneroptions 	SYSCTL_DEBUG
209ae12603aSSascha Wildner
210ae12603aSSascha Wildner#
21123591d78SSascha Wildner# NO_SYSCTL_DESCR prevents sysctl descriptions from being compiled in
21223591d78SSascha Wildner#
21323591d78SSascha Wildner#options	NO_SYSCTL_DESCR
21423591d78SSascha Wildner
21523591d78SSascha Wildner#
216745b8439SSascha Wildner# This option let some drivers co-exist that can't co-exist in a running
217745b8439SSascha Wildner# system.  This is used to be able to compile all kernel code in one go for
218745b8439SSascha Wildner# quality assurance purposes (like this file, which the option takes it name
219745b8439SSascha Wildner# from.)
220745b8439SSascha Wildner#
221745b8439SSascha Wildneroptions 	COMPILING_LINT
222745b8439SSascha Wildner
223745b8439SSascha Wildner
224745b8439SSascha Wildner# XXX - this doesn't belong here.
225745b8439SSascha Wildner# Allow ordinary users to take the console - this is useful for X.
226745b8439SSascha Wildneroptions 	UCONSOLE
227745b8439SSascha Wildner
228745b8439SSascha Wildner#####################################################################
229745b8439SSascha Wildner# NETWORKING OPTIONS
230745b8439SSascha Wildner
231745b8439SSascha Wildner#
232745b8439SSascha Wildner# Protocol families:
233745b8439SSascha Wildner#  Only the INET (Internet) family is officially supported in DragonFly.
234745b8439SSascha Wildner#
235745b8439SSascha Wildneroptions 	INET			#Internet communications protocols
236745b8439SSascha Wildneroptions 	INET6			#IPv6 communications protocols
237745b8439SSascha Wildner
238745b8439SSascha Wildneroptions 	MPLS			#Multi-Protocol Label Switching
239745b8439SSascha Wildner
2407902ca8cSSascha Wildner#
2417902ca8cSSascha Wildner# SMB/CIFS requester
2427902ca8cSSascha Wildner# NETSMB enables support for SMB protocol, it requires LIBMCHAIN and LIBICONV
2437902ca8cSSascha Wildner# options.
2447902ca8cSSascha Wildneroptions 	NETSMB			#SMB/CIFS requester
2457902ca8cSSascha Wildner
246745b8439SSascha Wildner# mchain library. It can be either loaded as KLD or compiled into kernel
247745b8439SSascha Wildneroptions 	LIBMCHAIN		#mbuf management library
248745b8439SSascha Wildner
249745b8439SSascha Wildner# netgraph(4). Enable the base netgraph code with the NETGRAPH option.
250745b8439SSascha Wildner# Individual node types can be enabled with the corresponding option
251745b8439SSascha Wildner# listed below; however, this is not strictly necessary as netgraph
252745b8439SSascha Wildner# will automatically load the corresponding KLD module if the node type
253745b8439SSascha Wildner# is not already compiled into the kernel. Each type below has a
254745b8439SSascha Wildner# corresponding man page, e.g., ng_async(4).
255745b8439SSascha Wildneroptions 	NETGRAPH		#netgraph(4) system
256745b8439SSascha Wildneroptions 	NETGRAPH_ASYNC
257745b8439SSascha Wildneroptions 	NETGRAPH_BPF
258745b8439SSascha Wildneroptions 	NETGRAPH_BRIDGE
259745b8439SSascha Wildneroptions 	NETGRAPH_CISCO
260745b8439SSascha Wildneroptions 	NETGRAPH_ECHO
261745b8439SSascha Wildneroptions		NETGRAPH_EIFACE
262745b8439SSascha Wildneroptions 	NETGRAPH_ETHER
263e288257eSSascha Wildneroptions		NETGRAPH_FEC
264745b8439SSascha Wildneroptions 	NETGRAPH_FRAME_RELAY
265745b8439SSascha Wildneroptions 	NETGRAPH_HOLE
266745b8439SSascha Wildneroptions 	NETGRAPH_IFACE
267745b8439SSascha Wildneroptions 	NETGRAPH_KSOCKET
268745b8439SSascha Wildneroptions 	NETGRAPH_L2TP
269745b8439SSascha Wildneroptions 	NETGRAPH_LMI
270745b8439SSascha Wildner# MPPC compression requires proprietary files (not included)
271745b8439SSascha Wildner#options 	NETGRAPH_MPPC_COMPRESSION
272745b8439SSascha Wildneroptions 	NETGRAPH_MPPC_ENCRYPTION
273745b8439SSascha Wildneroptions 	NETGRAPH_ONE2MANY
274745b8439SSascha Wildneroptions 	NETGRAPH_PPP
275745b8439SSascha Wildneroptions 	NETGRAPH_PPPOE
276745b8439SSascha Wildneroptions 	NETGRAPH_PPTPGRE
277745b8439SSascha Wildneroptions 	NETGRAPH_RFC1490
278745b8439SSascha Wildneroptions 	NETGRAPH_SOCKET
279745b8439SSascha Wildneroptions 	NETGRAPH_TEE
280745b8439SSascha Wildneroptions 	NETGRAPH_TTY
281745b8439SSascha Wildneroptions 	NETGRAPH_UI
282745b8439SSascha Wildneroptions 	NETGRAPH_VJC
283745b8439SSascha Wildner
284745b8439SSascha Wildnerdevice		mn	# Munich32x/Falc54 Nx64kbit/sec cards.
285745b8439SSascha Wildner
286745b8439SSascha Wildner#
287745b8439SSascha Wildner# Network interfaces:
288745b8439SSascha Wildner#  The `loop' pseudo-device is MANDATORY when networking is enabled.
289745b8439SSascha Wildner#  The `ether' pseudo-device provides generic code to handle
290745b8439SSascha Wildner#  Ethernets; it is MANDATORY when a Ethernet device driver is
291745b8439SSascha Wildner#  configured.
292745b8439SSascha Wildner#  The `sppp' pseudo-device serves a similar role for certain types
29309ab7e4eSSascha Wildner#  of synchronous PPP links.
294745b8439SSascha Wildner#  The `sl' pseudo-device implements the Serial Line IP (SLIP) service.
295745b8439SSascha Wildner#  The `bpf' pseudo-device enables the Berkeley Packet Filter.  Be
296745b8439SSascha Wildner#  aware of the legal and administrative consequences of enabling this
297745b8439SSascha Wildner#  option.  The number of devices determines the maximum number of
298745b8439SSascha Wildner#  simultaneous BPF clients programs runnable.
299745b8439SSascha Wildner#  The `disc' pseudo-device implements a minimal network interface,
300745b8439SSascha Wildner#  which throws away all packets sent and never receives any.  It is
301745b8439SSascha Wildner#  included for testing purposes.  This shows up as the 'ds' interface.
302745b8439SSascha Wildner#  The `tun' pseudo-device implements (user-)ppp and nos-tun
303745b8439SSascha Wildner#  The `gif' pseudo-device implements IPv6 over IP4 tunneling,
304745b8439SSascha Wildner#  IPv4 over IPv6 tunneling, IPv4 over IPv4 tunneling and
305745b8439SSascha Wildner#  IPv6 over IPv6 tunneling.
306745b8439SSascha Wildner#  The `gre' device implements two types of IP4 over IP4 tunneling:
307745b8439SSascha Wildner#  GRE and MOBILE, as specified in the RFC1701 and RFC2004.
308745b8439SSascha Wildner#  The `stf' device implements 6to4 encapsulation.
309745b8439SSascha Wildner#  The `ef' pseudo-device provides support for multiple ethernet frame types
310745b8439SSascha Wildner#  specified via ETHER_* options. See ef(4) for details.
311745b8439SSascha Wildner#
312745b8439SSascha Wildnerpseudo-device	ether			#Generic Ethernet
313745b8439SSascha Wildnerpseudo-device	vlan	1		#VLAN support
314745b8439SSascha Wildnerpseudo-device	bridge			#Bridging support
315745b8439SSascha Wildnerpseudo-device	sppp			#Generic Synchronous PPP
316745b8439SSascha Wildnerpseudo-device	loop			#Network loopback device
317745b8439SSascha Wildnerpseudo-device	bpf			#Berkeley packet filter
318745b8439SSascha Wildnerpseudo-device	disc			#Discard device (ds0, ds1, etc)
319ded7543cSSascha Wildnerpseudo-device	tap			#Ethernet tunnel network interface
320745b8439SSascha Wildnerpseudo-device	tun			#Tunnel driver (ppp(8), nos-tun(8))
321745b8439SSascha Wildnerpseudo-device	sl	2		#Serial Line IP
322745b8439SSascha Wildnerpseudo-device	gre			#IP over IP tunneling
323745b8439SSascha Wildner
324745b8439SSascha Wildner# for IPv6
325745b8439SSascha Wildnerpseudo-device	gif			#IPv6 and IPv4 tunneling
326745b8439SSascha Wildnerpseudo-device	stf			#6to4 IPv6 over IPv4 encapsulation
327745b8439SSascha Wildner
328745b8439SSascha Wildner#
329745b8439SSascha Wildner# Internet family options:
330745b8439SSascha Wildner#
331745b8439SSascha Wildner# MROUTING enables the kernel multicast packet forwarder, which works
332*99a4aa9dSSascha Wildner# with mrouted(8) (from dports).
333745b8439SSascha Wildner#
334745b8439SSascha Wildner# PIM enables Protocol Independent Multicast in the kernel.
335745b8439SSascha Wildner# Requires MROUTING enabled.
336745b8439SSascha Wildner#
337745b8439SSascha Wildner# IPFIREWALL enables support for IP firewall construction, in
338745b8439SSascha Wildner# conjunction with the `ipfw' program.  IPFIREWALL_VERBOSE sends
339745b8439SSascha Wildner# logged packets to the system logger.  IPFIREWALL_VERBOSE_LIMIT
340745b8439SSascha Wildner# limits the number of times a matching entry can be logged.
341745b8439SSascha Wildner#
342745b8439SSascha Wildner# WARNING:  IPFIREWALL defaults to a policy of "deny ip from any to any"
343745b8439SSascha Wildner# and if you do not add other rules during startup to allow access,
344745b8439SSascha Wildner# YOU WILL LOCK YOURSELF OUT.  It is suggested that you set firewall_type=open
345745b8439SSascha Wildner# in /etc/rc.conf when first enabling this feature, then refining the
346745b8439SSascha Wildner# firewall rules in /etc/rc.firewall after you've tested that the new kernel
347745b8439SSascha Wildner# feature works properly.
348745b8439SSascha Wildner#
3493e9602ecSSascha Wildner# IPFIREWALL3 is based on a newer version of FreeBSD's ipfw2, along with
3503e9602ecSSascha Wildner# some enhancements. See ipfw3(4).
3513e9602ecSSascha Wildner#
352745b8439SSascha Wildner# IPFIREWALL_DEFAULT_TO_ACCEPT causes the default rule (at boot) to
353745b8439SSascha Wildner# allow everything.  Use with care, if a cracker can crash your
354745b8439SSascha Wildner# firewall machine, they can get to your protected machines.  However,
355745b8439SSascha Wildner# if you are using it as an as-needed filter for specific problems as
356745b8439SSascha Wildner# they arise, then this may be for you.  Changing the default to 'allow'
357745b8439SSascha Wildner# means that you won't get stuck if the kernel and /sbin/ipfw binary get
358745b8439SSascha Wildner# out of sync.
359745b8439SSascha Wildner#
360745b8439SSascha Wildner# IPDIVERT enables the divert IP sockets, used by ``ipfw divert''
361745b8439SSascha Wildner#
362745b8439SSascha Wildner# IPSTEALTH enables code to support stealth forwarding (i.e., forwarding
363745b8439SSascha Wildner# packets without touching the ttl).  This can be useful to hide firewalls
364745b8439SSascha Wildner# from traceroute and similar tools.
365745b8439SSascha Wildner#
366745b8439SSascha Wildner# TCPDEBUG is undocumented.
367745b8439SSascha Wildner#
3686bedbebcSSepherosa Ziehau# ICMPPRINTFS enables ICMP to do extra debug prints.
3696bedbebcSSepherosa Ziehau#
370745b8439SSascha Wildneroptions 	MROUTING		# Multicast routing
371745b8439SSascha Wildneroptions 	PIM			# Protocol Independent Multicast
372745b8439SSascha Wildneroptions 	IPFIREWALL		#firewall
373745b8439SSascha Wildneroptions		IPFIREWALL_DEBUG	#debug prints
374745b8439SSascha Wildneroptions 	IPFIREWALL_VERBOSE	#enable logging to syslogd(8)
375745b8439SSascha Wildneroptions 	IPFIREWALL_VERBOSE_LIMIT=100	#limit verbosity
376745b8439SSascha Wildneroptions 	IPFIREWALL_DEFAULT_TO_ACCEPT	#allow everything by default
377745b8439SSascha Wildneroptions 	IPV6FIREWALL		#firewall for IPv6
378745b8439SSascha Wildneroptions 	IPV6FIREWALL_VERBOSE
379745b8439SSascha Wildneroptions 	IPV6FIREWALL_VERBOSE_LIMIT=100
380745b8439SSascha Wildneroptions 	IPV6FIREWALL_DEFAULT_TO_ACCEPT
381745b8439SSascha Wildneroptions 	IPDIVERT		#divert sockets
382745b8439SSascha Wildneroptions 	IPSTEALTH		#support for stealth forwarding
383745b8439SSascha Wildneroptions 	TCPDEBUG
3846bedbebcSSepherosa Ziehauoptions		ICMPPRINTFS
385745b8439SSascha Wildner
3863e9602ecSSascha Wildneroptions		IPFIREWALL3
3873e9602ecSSascha Wildner
388745b8439SSascha Wildnerdevice		pf
389745b8439SSascha Wildnerdevice		pflog
390745b8439SSascha Wildner
391745b8439SSascha Wildner#CARP
392745b8439SSascha Wildnerpseudo-device carp
393745b8439SSascha Wildneroptions CARP
394745b8439SSascha Wildner
3952749c4b7SSascha Wildner# Link aggregation interface.
396e2ead390SSascha Wildnerpseudo-device	lagg
3972749c4b7SSascha Wildner
398745b8439SSascha Wildner# The MBUF_STRESS_TEST option enables options which create
399745b8439SSascha Wildner# various random failures / extreme cases related to mbuf
400745b8439SSascha Wildner# functions.  See the mbuf(9) manpage for a list of available
401745b8439SSascha Wildner# test cases.
402745b8439SSascha Wildneroptions         MBUF_STRESS_TEST
403745b8439SSascha Wildner
404745b8439SSascha Wildner# Statically link in accept filters
405745b8439SSascha Wildneroptions                ACCEPT_FILTER_DATA
406745b8439SSascha Wildneroptions                ACCEPT_FILTER_HTTP
407745b8439SSascha Wildner
408745b8439SSascha Wildner# TCP_SIGNATURE adds support for RFC 2385 (TCP-MD5) digests. These are
409755d70b8SSascha Wildner# carried in TCP option 19.
4100defa1cfSSepherosa Ziehau# This is enabled on a per-socket basis using the TCP_SIGNATURE_ENABLE
4110defa1cfSSepherosa Ziehau# socket option.
412755d70b8SSascha Wildner# This requires the use of 'device crypto' or 'device cryptodev'.
41386de01bdSSascha Wildner#
414755d70b8SSascha Wildner# XXX disabled for now until building with it is fixed, which broke
41596a102deSSascha Wildner# after removing IPsec.
41686de01bdSSascha Wildner#
41786de01bdSSascha Wildner#options   TCP_SIGNATURE   #include support for RFC 2385
418745b8439SSascha Wildner
419745b8439SSascha Wildner#
420745b8439SSascha Wildner# TCP_DROP_SYNFIN adds support for ignoring TCP packets with SYN+FIN. This
421745b8439SSascha Wildner# prevents nmap et al. from identifying the TCP/IP stack, but breaks support
422745b8439SSascha Wildner# for RFC1644 extensions and is not recommended for web servers.
423745b8439SSascha Wildner#
424745b8439SSascha Wildneroptions 	TCP_DROP_SYNFIN		#drop TCP packets with SYN+FIN
425745b8439SSascha Wildner
426745b8439SSascha Wildner# ICMP_BANDLIM enables icmp error response bandwidth limiting.   You
427745b8439SSascha Wildner# typically want this option as it will help protect the machine from
428745b8439SSascha Wildner# D.O.S. packet attacks.
429745b8439SSascha Wildner#
430745b8439SSascha Wildneroptions 	ICMP_BANDLIM
431745b8439SSascha Wildner
432745b8439SSascha Wildner# DUMMYNET enables the "dummynet" bandwidth limiter. You need
433745b8439SSascha Wildner# IPFIREWALL as well. See the dummynet(4) and ipfw(8) manpages for more info.
434745b8439SSascha Wildner#
435745b8439SSascha Wildneroptions 	DUMMYNET
436745b8439SSascha Wildneroptions		DUMMYNET_DEBUG
437745b8439SSascha Wildner
438239ba22eSSepherosa Ziehau# IFPOLL_ENABLE adds support for mixed interrupt-polling handling
439745b8439SSascha Wildner# of network device drivers, which has significant benefits in terms
440745b8439SSascha Wildner# of robustness to overloads and responsivity, as well as permitting
441745b8439SSascha Wildner# accurate scheduling of the CPU time between kernel network processing
442745b8439SSascha Wildner# and other activities. The drawback is a moderate (up to 1/pollhz seconds)
443745b8439SSascha Wildner# potential increase in response times. See polling(4) for further details.
444745b8439SSascha Wildner#
445745b8439SSascha Wildner# IFPOLL_ENABLE adds hardware queues' based polling
446745b8439SSascha Wildneroptions		IFPOLL_ENABLE
447745b8439SSascha Wildner
448745b8439SSascha Wildner#####################################################################
449745b8439SSascha Wildner# FILESYSTEM OPTIONS
450745b8439SSascha Wildner
451745b8439SSascha Wildner#
452745b8439SSascha Wildner# Only the root, /usr, and /tmp filesystems need be statically
453745b8439SSascha Wildner# compiled; everything else will be automatically loaded at mount
454745b8439SSascha Wildner# time.  (Exception: the UFS family --- FFS, and MFS ---
455745b8439SSascha Wildner# cannot currently be demand-loaded.)  Some people still prefer
456745b8439SSascha Wildner# to statically compile other filesystems as well.
457745b8439SSascha Wildner#
458745b8439SSascha Wildner
459745b8439SSascha Wildner# One of these is mandatory:
460745b8439SSascha Wildneroptions 	FFS			#Fast filesystem
461745b8439SSascha Wildneroptions 	MFS			#Memory filesystem
462745b8439SSascha Wildneroptions 	NFS			#Network filesystem
463745b8439SSascha Wildner
464745b8439SSascha Wildner# The rest are optional:
465745b8439SSascha Wildner#options 	NFS_NOSERVER		#Disable the NFS-server code.
4668cc55cc8SSascha Wildneroptions 	AUTOFS			#Automounter filesystem
467745b8439SSascha Wildneroptions 	CD9660			#ISO 9660 filesystem
4686cd29fc7SSascha Wildneroptions 	FUSE			#FUSE support module
4698124268fSSascha Wildneroptions		HAMMER			#HAMMER filesystem
470cf4ab83eSMatthew Dillonoptions		HAMMER2			#HAMMER2 filesystem
471745b8439SSascha Wildneroptions 	HPFS			#OS/2 File system
472745b8439SSascha Wildneroptions 	MSDOSFS			#MS DOS filesystem
473745b8439SSascha Wildneroptions 	NTFS			#NT filesystem
474745b8439SSascha Wildneroptions 	NULLFS			#NULL filesystem
475745b8439SSascha Wildneroptions 	PROCFS			#Process filesystem
4767902ca8cSSascha Wildneroptions 	SMBFS			#SMB/CIFS filesystem
477745b8439SSascha Wildneroptions 	TMPFS			#Temporary filesystem
4788124268fSSascha Wildneroptions		UDF			#UDF filesystem
479745b8439SSascha Wildner
480745b8439SSascha Wildner# The xFS_ROOT options REQUIRE the associated ``options xFS''
481745b8439SSascha Wildneroptions 	NFS_ROOT		#NFS usable as root device
482745b8439SSascha Wildner
483745b8439SSascha Wildner# Soft updates is technique for improving UFS filesystem speed and
484745b8439SSascha Wildner# making abrupt shutdown less risky.
485745b8439SSascha Wildneroptions 	SOFTUPDATES
486745b8439SSascha Wildner
487745b8439SSascha Wildner# Directory hashing improves the speed of operations on very large
488745b8439SSascha Wildner# directories at the expense of some memory.
489745b8439SSascha Wildneroptions 	UFS_DIRHASH
490745b8439SSascha Wildner
491745b8439SSascha Wildner# Make space in the kernel for a root filesystem on a md device.
492745b8439SSascha Wildner# Define to the number of kilobytes to reserve for the filesystem.
493745b8439SSascha Wildneroptions 	MD_ROOT_SIZE=10
494745b8439SSascha Wildner
495745b8439SSascha Wildner# Make the md device a potential root device, either with preloaded
496745b8439SSascha Wildner# images of type mfs_root or md_root.
497745b8439SSascha Wildneroptions 	MD_ROOT
498745b8439SSascha Wildner
499745b8439SSascha Wildner# Specify double the default maximum size for malloc(9)-backed md devices.
500745b8439SSascha Wildneroptions 	MD_NSECT=40000
501745b8439SSascha Wildner
502745b8439SSascha Wildner# Allow this many swap-devices.
503745b8439SSascha Wildner#
504745b8439SSascha Wildner# In order to manage swap, the system must reserve bitmap space that
505745b8439SSascha Wildner# scales with the largest mounted swap device multiplied by NSWAPDEV,
506745b8439SSascha Wildner# regardless of whether other swap devices exist or not.  So it
507745b8439SSascha Wildner# is not a good idea to make this value too large.
508745b8439SSascha Wildneroptions 	NSWAPDEV=5
509745b8439SSascha Wildner
510745b8439SSascha Wildner# Disk quotas are supported when this option is enabled.
511745b8439SSascha Wildneroptions 	QUOTA			#enable disk quotas
512745b8439SSascha Wildner
513745b8439SSascha Wildner# If you are running a machine just as a fileserver for PC and MAC
514d22a69a4SSascha Wildner# users, e.g. using SAMBA, you may consider setting this option
515745b8439SSascha Wildner# and keeping all those users' directories on a filesystem that is
516745b8439SSascha Wildner# mounted with the suiddir option. This gives new files the same
517745b8439SSascha Wildner# ownership as the directory (similar to group). It's a security hole
518745b8439SSascha Wildner# if you let these users run programs, so confine it to file-servers
519745b8439SSascha Wildner# (but it'll save you lots of headaches in those cases). Root owned
520745b8439SSascha Wildner# directories are exempt and X bits are cleared. The suid bit must be
521745b8439SSascha Wildner# set on the directory as well; see chmod(1) PC owners can't see/set
522745b8439SSascha Wildner# ownerships so they keep getting their toes trodden on. This saves
523745b8439SSascha Wildner# you all the support calls as the filesystem it's used on will act as
524745b8439SSascha Wildner# they expect: "It's my dir so it must be my file".
525745b8439SSascha Wildner#
526745b8439SSascha Wildneroptions 	SUIDDIR
527745b8439SSascha Wildner
528745b8439SSascha Wildner# NFS options:
529745b8439SSascha Wildneroptions 	NFS_MINATTRTIMO=3	# VREG attrib cache timeout in sec
530745b8439SSascha Wildneroptions 	NFS_MAXATTRTIMO=60
531745b8439SSascha Wildneroptions 	NFS_MINDIRATTRTIMO=30	# VDIR attrib cache timeout in sec
532745b8439SSascha Wildneroptions 	NFS_MAXDIRATTRTIMO=60
533745b8439SSascha Wildneroptions 	NFS_GATHERDELAY=10	# Default write gather delay (msec)
534745b8439SSascha Wildneroptions 	NFS_UIDHASHSIZ=29	# Tune the size of nfssvc_sock with this
535745b8439SSascha Wildneroptions 	NFS_WDELAYHASHSIZ=16	# and with this
536745b8439SSascha Wildneroptions 	NFS_MUIDHASHSIZ=63	# Tune the size of nfsmount with this
537745b8439SSascha Wildneroptions 	NFS_DEBUG		# Enable NFS Debugging
538745b8439SSascha Wildner
5391b0988d0SAntonio Huete Jimenez# NTFS options:
5401b0988d0SAntonio Huete Jimenezoptions		NTFS_DEBUG
5411b0988d0SAntonio Huete Jimenez
542745b8439SSascha Wildner# MSDOSFS options:
543745b8439SSascha Wildneroptions		MSDOSFS_DEBUG		# Enable MSDOSFS Debugging
544745b8439SSascha Wildner
545745b8439SSascha Wildner#
546745b8439SSascha Wildner# Add support for the EXT2FS filesystem of Linux fame.  Be a bit
547745b8439SSascha Wildner# careful with this - the ext2fs code has a tendency to lag behind
548745b8439SSascha Wildner# changes and not be exercised very much, so mounting read/write could
549745b8439SSascha Wildner# be dangerous (and even mounting read only could result in panics.)
550745b8439SSascha Wildner#
551745b8439SSascha Wildneroptions 	EXT2FS
552745b8439SSascha Wildner
553745b8439SSascha Wildner# Optional character code conversion support with LIBICONV.
554745b8439SSascha Wildner# Each option requires their base file system and LIBICONV.
555745b8439SSascha Wildneroptions 	CD9660_ICONV
556745b8439SSascha Wildneroptions 	MSDOSFS_ICONV
557745b8439SSascha Wildneroptions 	NTFS_ICONV
558745b8439SSascha Wildner
559745b8439SSascha Wildner#####################################################################
560745b8439SSascha Wildner# POSIX P1003.1B
561745b8439SSascha Wildner
562745b8439SSascha Wildner# Real time extensions added in the 1993 Posix
563745b8439SSascha Wildner# _KPOSIX_PRIORITY_SCHEDULING: Build in _POSIX_PRIORITY_SCHEDULING
564745b8439SSascha Wildner
565745b8439SSascha Wildneroptions 	_KPOSIX_PRIORITY_SCHEDULING
566745b8439SSascha Wildner
567745b8439SSascha Wildner#####################################################################
568745b8439SSascha Wildner# CLOCK OPTIONS
569745b8439SSascha Wildner
570745b8439SSascha Wildner# The granularity of operation is controlled by the kernel option HZ whose
571745b8439SSascha Wildner# default value (100) means a granularity of 10ms (1s/HZ).
572745b8439SSascha Wildner# Consider, however, that reducing the granularity too much might
573745b8439SSascha Wildner# cause excessive overhead in clock interrupt processing,
574745b8439SSascha Wildner# potentially causing ticks to be missed and thus actually reducing
575745b8439SSascha Wildner# the accuracy of operation.
576745b8439SSascha Wildner
577745b8439SSascha Wildneroptions 	HZ=100
578745b8439SSascha Wildner
579745b8439SSascha Wildner#####################################################################
580745b8439SSascha Wildner# SCSI DEVICES
581745b8439SSascha Wildner
582745b8439SSascha Wildner# SCSI DEVICE CONFIGURATION
583745b8439SSascha Wildner
584745b8439SSascha Wildner# The SCSI subsystem consists of the `base' SCSI code, a number of
585745b8439SSascha Wildner# high-level SCSI device `type' drivers, and the low-level host-adapter
586745b8439SSascha Wildner# device drivers.  The host adapters are listed in the ISA and PCI
587745b8439SSascha Wildner# device configuration sections below.
588745b8439SSascha Wildner#
589745b8439SSascha Wildner# Beginning with FreeBSD 2.0.5 you can wire down your SCSI devices so
590745b8439SSascha Wildner# that a given bus, target, and LUN always come on line as the same
591745b8439SSascha Wildner# device unit.  In earlier versions the unit numbers were assigned
592745b8439SSascha Wildner# in the order that the devices were probed on the SCSI bus.  This
593745b8439SSascha Wildner# means that if you removed a disk drive, you may have had to rewrite
594745b8439SSascha Wildner# your /etc/fstab file, and also that you had to be careful when adding
595745b8439SSascha Wildner# a new disk as it may have been probed earlier and moved your device
596745b8439SSascha Wildner# configuration around.
597745b8439SSascha Wildner
598745b8439SSascha Wildner# This old behavior is maintained as the default behavior.  The unit
599745b8439SSascha Wildner# assignment begins with the first non-wired down unit for a device
600745b8439SSascha Wildner# type.  For example, if you wire a disk as "da3" then the first
601745b8439SSascha Wildner# non-wired disk will be assigned da4.
602745b8439SSascha Wildner
603745b8439SSascha Wildner# The syntax for wiring down devices is:
604745b8439SSascha Wildner
605745b8439SSascha Wildner# device	scbus0 at ahc0		# Single bus device
606745b8439SSascha Wildner# device	scbus1 at ahc1 bus 0	# Single bus device
607745b8439SSascha Wildner# device	scbus3 at ahc2 bus 0	# Twin bus device
608745b8439SSascha Wildner# device	scbus2 at ahc2 bus 1	# Twin bus device
609745b8439SSascha Wildner# device 	da0 at scbus0 target 0 unit 0
610745b8439SSascha Wildner# device	da1 at scbus3 target 1
611745b8439SSascha Wildner# device	da2 at scbus2 target 3
612745b8439SSascha Wildner# device	sa1 at scbus1 target 6
613745b8439SSascha Wildner# device	cd
614745b8439SSascha Wildner
615745b8439SSascha Wildner# "units" (SCSI logical unit number) that are not specified are
616745b8439SSascha Wildner# treated as if specified as LUN 0.
617745b8439SSascha Wildner
618745b8439SSascha Wildner# All SCSI devices allocate as many units as are required.
619745b8439SSascha Wildner
620745b8439SSascha Wildner# The "unknown" device (uk? in pre-2.0.5) is now part of the base SCSI
621745b8439SSascha Wildner# configuration and doesn't have to be explicitly configured.
622745b8439SSascha Wildner
623745b8439SSascha Wildnerdevice		scbus			#base SCSI code
624745b8439SSascha Wildnerdevice		ch			#SCSI media changers
625745b8439SSascha Wildnerdevice		da			#SCSI direct access devices (aka disks)
626745b8439SSascha Wildnerdevice		sa			#SCSI tapes
627745b8439SSascha Wildnerdevice		cd			#SCSI CD-ROMs
628745b8439SSascha Wildnerdevice		pass			#CAM passthrough driver
629745b8439SSascha Wildnerdevice		sg			#Passthrough device (linux scsi generic)
630745b8439SSascha Wildnerdevice		pt			#SCSI processor type
631745b8439SSascha Wildnerdevice		ses			#SCSI SES/SAF-TE driver
6329c86eff7SSascha Wildnerdevice		targ			#SCSI Target Mode Code
6339c86eff7SSascha Wildnerdevice		targbh			#SCSI Target Mode Blackhole Device
634745b8439SSascha Wildner
635745b8439SSascha Wildner# Options for device mapper
636745b8439SSascha Wildnerdevice		dm
637745b8439SSascha Wildnerdevice		dm_target_crypt
638745b8439SSascha Wildnerdevice		dm_target_linear
639745b8439SSascha Wildnerdevice		dm_target_striped
64059146421STomohiro Kusumidevice		dm_target_delay
641b9790952STomohiro Kusumidevice		dm_target_flakey
642745b8439SSascha Wildner
643745b8439SSascha Wildner# Options for iSCSI
644745b8439SSascha Wildnerdevice	        iscsi_initiator
645745b8439SSascha Wildneroptions		ISCSI_INITIATOR_DEBUG=8
646745b8439SSascha Wildner
647745b8439SSascha Wildner# CAM OPTIONS:
648745b8439SSascha Wildner# debugging options:
649745b8439SSascha Wildner# -- NOTE --  If you specify one of the bus/target/lun options, you must
650745b8439SSascha Wildner#             specify them all!
651745b8439SSascha Wildner# CAMDEBUG: When defined enables debugging macros
652745b8439SSascha Wildner# CAM_DEBUG_BUS:  Debug the given bus.  Use -1 to debug all busses.
653745b8439SSascha Wildner# CAM_DEBUG_TARGET:  Debug the given target.  Use -1 to debug all targets.
654745b8439SSascha Wildner# CAM_DEBUG_LUN:  Debug the given lun.  Use -1 to debug all luns.
655745b8439SSascha Wildner# CAM_DEBUG_FLAGS:  OR together CAM_DEBUG_INFO, CAM_DEBUG_TRACE,
656745b8439SSascha Wildner#                   CAM_DEBUG_SUBTRACE, and CAM_DEBUG_CDB
657745b8439SSascha Wildner#
658745b8439SSascha Wildner# CAM_MAX_HIGHPOWER: Maximum number of concurrent high power (start unit) cmds
659745b8439SSascha Wildner# SCSI_NO_SENSE_STRINGS: When defined disables sense descriptions
660745b8439SSascha Wildner# SCSI_NO_OP_STRINGS: When defined disables opcode descriptions
661745b8439SSascha Wildner# SCSI_DELAY: The number of MILLISECONDS to freeze the SIM (scsi adapter)
662745b8439SSascha Wildner#             queue after a bus reset, and the number of milliseconds to
663745b8439SSascha Wildner#             freeze the device queue after a bus device reset.  This
664745b8439SSascha Wildner#             can be changed at boot and runtime with the
665745b8439SSascha Wildner#             kern.cam.scsi_delay tunable/sysctl.
666745b8439SSascha Wildneroptions 	CAMDEBUG
667745b8439SSascha Wildneroptions 	CAM_DEBUG_BUS=-1
668745b8439SSascha Wildneroptions 	CAM_DEBUG_TARGET=-1
669745b8439SSascha Wildneroptions 	CAM_DEBUG_LUN=-1
670745b8439SSascha Wildneroptions 	CAM_DEBUG_FLAGS="CAM_DEBUG_INFO|CAM_DEBUG_TRACE|CAM_DEBUG_CDB"
671745b8439SSascha Wildneroptions 	CAM_MAX_HIGHPOWER=4
672745b8439SSascha Wildneroptions 	SCSI_NO_SENSE_STRINGS
673745b8439SSascha Wildneroptions 	SCSI_NO_OP_STRINGS
674745b8439SSascha Wildneroptions 	SCSI_DELAY=8000	# Be pessimistic about Joe SCSI device
675745b8439SSascha Wildner
676745b8439SSascha Wildner# Options for the CAM CDROM driver:
677745b8439SSascha Wildner# CHANGER_MIN_BUSY_SECONDS: Guaranteed minimum time quantum for a changer LUN
678745b8439SSascha Wildner# CHANGER_MAX_BUSY_SECONDS: Maximum time quantum per changer LUN, only
679745b8439SSascha Wildner#                           enforced if there is I/O waiting for another LUN
680745b8439SSascha Wildner# The compiled in defaults for these variables are 2 and 10 seconds,
681745b8439SSascha Wildner# respectively.
682745b8439SSascha Wildner#
683745b8439SSascha Wildner# These can also be changed on the fly with the following sysctl variables:
684745b8439SSascha Wildner# kern.cam.cd.changer.min_busy_seconds
685745b8439SSascha Wildner# kern.cam.cd.changer.max_busy_seconds
686745b8439SSascha Wildner#
687745b8439SSascha Wildneroptions 	CHANGER_MIN_BUSY_SECONDS=2
688745b8439SSascha Wildneroptions 	CHANGER_MAX_BUSY_SECONDS=10
689745b8439SSascha Wildner
690745b8439SSascha Wildner# Options for the CAM sequential access driver:
691745b8439SSascha Wildner# SA_IO_TIMEOUT: Timeout for read/write/wfm  operations, in minutes
692745b8439SSascha Wildner# SA_SPACE_TIMEOUT: Timeout for space operations, in minutes
693745b8439SSascha Wildner# SA_REWIND_TIMEOUT: Timeout for rewind operations, in minutes
694745b8439SSascha Wildner# SA_ERASE_TIMEOUT: Timeout for erase operations, in minutes
695745b8439SSascha Wildner# SA_1FM_AT_EOD: Default to model which only has a default one filemark at EOT.
696745b8439SSascha Wildneroptions 	SA_IO_TIMEOUT="(4)"
697745b8439SSascha Wildneroptions 	SA_SPACE_TIMEOUT="(60)"
698745b8439SSascha Wildneroptions 	SA_REWIND_TIMEOUT="(2*60)"
699745b8439SSascha Wildneroptions 	SA_ERASE_TIMEOUT="(4*60)"
700745b8439SSascha Wildneroptions 	SA_1FM_AT_EOD
701745b8439SSascha Wildner
702745b8439SSascha Wildner# Optional timeout for the CAM processor target (pt) device
703745b8439SSascha Wildner# This is specified in seconds.  The default is 60 seconds.
704745b8439SSascha Wildneroptions 	SCSI_PT_DEFAULT_TIMEOUT="60"
705745b8439SSascha Wildner
706745b8439SSascha Wildner# Optional enable of doing SES passthrough on other devices (e.g., disks)
707745b8439SSascha Wildner#
708745b8439SSascha Wildner# Normally disabled because a lot of newer SCSI disks report themselves
709745b8439SSascha Wildner# as having SES capabilities, but this can then clot up attempts to build
710745b8439SSascha Wildner# build a topology with the SES device that's on the box these drives
711745b8439SSascha Wildner# are in....
712745b8439SSascha Wildneroptions 	SES_ENABLE_PASSTHROUGH
713745b8439SSascha Wildner
714745b8439SSascha Wildner#####################################################################
715745b8439SSascha Wildner# MISCELLANEOUS DEVICES AND OPTIONS
716745b8439SSascha Wildner
717745b8439SSascha Wildner# The `pty' device usually turns out to be ``effectively mandatory'',
718745b8439SSascha Wildner# as it is required for `telnetd', `rlogind', `screen', `emacs', and
719745b8439SSascha Wildner# `xterm', among others.
720745b8439SSascha Wildner
721745b8439SSascha Wildnerpseudo-device	pty		# Pseudo ttys
722745b8439SSascha Wildnerpseudo-device	gzip		# Exec gzipped a.out's
723745b8439SSascha Wildnerpseudo-device	md		# Memory/malloc disk
724b8afae86SMatthew Dillonpseudo-device	vn		# File image "disks"
725745b8439SSascha Wildnerpseudo-device	snp		# Snoop device - to look at pty/vty/etc..
726745b8439SSascha Wildnerpseudo-device	ccd	4	# Concatenated disk driver
727745b8439SSascha Wildner
728745b8439SSascha Wildner# Configuring Vinum into the kernel is not necessary, since the kld
729745b8439SSascha Wildner# module gets started automatically when vinum(8) starts.  This
730745b8439SSascha Wildner# device is also untested.  Use at your own risk.
731745b8439SSascha Wildner#
732745b8439SSascha Wildner# The option VINUMDEBUG must match the value set in CFLAGS
733745b8439SSascha Wildner# in src/sbin/vinum/Makefile.  Failure to do so will result in
734745b8439SSascha Wildner# the following message from vinum(8):
735745b8439SSascha Wildner#
736745b8439SSascha Wildner# Can't get vinum config: Invalid argument
737745b8439SSascha Wildner#
738745b8439SSascha Wildner# see vinum(4) for more reasons not to use these options.
73910de45ebSSascha Wildnerpseudo-device	vinum		#Vinum concat/mirror/raid driver
74076cc149aSSascha Wildneroptions 	VINUMDEBUG	#enable Vinum debugging hooks
741745b8439SSascha Wildner
742745b8439SSascha Wildner# Kernel side iconv library
743745b8439SSascha Wildneroptions 	LIBICONV
744745b8439SSascha Wildner
745745b8439SSascha Wildner# Size of the kernel message buffer.  Should be N * pagesize.
746745b8439SSascha Wildneroptions 	MSGBUF_SIZE=40960
747745b8439SSascha Wildner
748745b8439SSascha Wildner#####################################################################
749745b8439SSascha Wildner# HARDWARE DEVICE CONFIGURATION
750745b8439SSascha Wildner
751745b8439SSascha Wildner# ISA devices:
752745b8439SSascha Wildner
753745b8439SSascha Wildner#
754745b8439SSascha Wildner# Mandatory ISA devices: isa
755745b8439SSascha Wildner#
756745b8439SSascha Wildnerdevice		isa
757745b8439SSascha Wildner
758745b8439SSascha Wildner#
759745b8439SSascha Wildner# Options for `isa':
760745b8439SSascha Wildner#
761745b8439SSascha Wildner# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
762745b8439SSascha Wildner# interrupt controller.  This saves about 0.7-1.25 usec for each interrupt.
763745b8439SSascha Wildner# This option breaks suspend/resume on some portables.
764745b8439SSascha Wildner#
765745b8439SSascha Wildner# AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A
766745b8439SSascha Wildner# interrupt controller.  This saves about 0.7-1.25 usec for each interrupt.
767fd7bbe3bSSascha Wildner# Automatic EOI is documented not to work for the slave with the
768745b8439SSascha Wildner# original i8259A, but it works for some clones and some integrated
769745b8439SSascha Wildner# versions.
770745b8439SSascha Wildner#
771745b8439SSascha Wildner# MAXMEM specifies the amount of RAM on the machine; if this is not
772745b8439SSascha Wildner# specified, DragonFly will first read the amount of memory from the CMOS
773745b8439SSascha Wildner# RAM, so the amount of memory will initially be limited to 64MB or 16MB
774745b8439SSascha Wildner# depending on the BIOS.  If the BIOS reports 64MB, a memory probe will
775745b8439SSascha Wildner# then attempt to detect the installed amount of RAM.  If this probe
776745b8439SSascha Wildner# fails to detect >64MB RAM you will have to use the MAXMEM option.
777745b8439SSascha Wildner# The amount is in kilobytes, so for a machine with 128MB of RAM, it would
778745b8439SSascha Wildner# be 131072 (128 * 1024).
779745b8439SSascha Wildner#
780745b8439SSascha Wildner# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
781745b8439SSascha Wildner# reset the CPU for reboot.  This is needed on some systems with broken
782745b8439SSascha Wildner# keyboard controllers.
783745b8439SSascha Wildner
784745b8439SSascha Wildneroptions 	AUTO_EOI_1
785745b8439SSascha Wildner#options 	AUTO_EOI_2
786745b8439SSascha Wildneroptions 	MAXMEM="(128*1024)"
787745b8439SSascha Wildner#options 	BROKEN_KEYBOARD_RESET
788745b8439SSascha Wildner
789745b8439SSascha Wildner# Enable support for the kernel PLL to use an external PPS signal,
790745b8439SSascha Wildner# under supervision of [x]ntpd(8)
791745b8439SSascha Wildner# More info in ntpd documentation: http://www.eecis.udel.edu/~ntp
792745b8439SSascha Wildner
793745b8439SSascha Wildneroptions 	PPS_SYNC
794745b8439SSascha Wildner
795745b8439SSascha Wildner# The keyboard controller; it controls the keyboard and the PS/2 mouse.
796745b8439SSascha Wildnerdevice		atkbdc0	at isa? port IO_KBD
797745b8439SSascha Wildner
798745b8439SSascha Wildner# The AT keyboard
799745b8439SSascha Wildnerdevice		atkbd0	at atkbdc? irq 1
800745b8439SSascha Wildner
801745b8439SSascha Wildner# Options for atkbd:
802745b8439SSascha Wildneroptions 	ATKBD_DFLT_KEYMAP	# specify the built-in keymap
803745b8439SSascha Wildnermakeoptions	ATKBD_DFLT_KEYMAP="jp.106"
804745b8439SSascha Wildner
805745b8439SSascha Wildner# These options are valid for other keyboard drivers as well.
806745b8439SSascha Wildneroptions 	KBD_DISABLE_KEYMAP_LOAD	# refuse to load a keymap
807745b8439SSascha Wildneroptions 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev
808745b8439SSascha Wildner
809745b8439SSascha Wildner# `flags' for atkbd:
810745b8439SSascha Wildner#       0x01    Force detection of keyboard, else we always assume a keyboard
811745b8439SSascha Wildner#       0x02    Don't reset keyboard, useful for some newer ThinkPads
812745b8439SSascha Wildner#	0x03	Force detection and avoid reset, might help with certain
813745b8439SSascha Wildner#		dockingstations
814745b8439SSascha Wildner#       0x04    Old-style (XT) keyboard support, useful for older ThinkPads
815745b8439SSascha Wildner
816745b8439SSascha Wildner# PS/2 mouse
817745b8439SSascha Wildnerdevice		psm0	at atkbdc? irq 12
818745b8439SSascha Wildner
819745b8439SSascha Wildner# Options for psm:
820745b8439SSascha Wildneroptions 	PSM_HOOKRESUME		#hook the system resume event, useful
821745b8439SSascha Wildner					#for some laptops
822745b8439SSascha Wildneroptions 	PSM_RESETAFTERSUSPEND	#reset the device at the resume event
823745b8439SSascha Wildner
824745b8439SSascha Wildnerdevice		kbdmux			# keyboard multiplexer
825745b8439SSascha Wildner
826745b8439SSascha Wildner# The video card driver.
827745b8439SSascha Wildnerdevice		vga0	at isa?
828745b8439SSascha Wildner
829745b8439SSascha Wildner# Options for vga:
830745b8439SSascha Wildneroptions		VGA_DEBUG=2		# enable VGA debug output
831745b8439SSascha Wildner
832745b8439SSascha Wildner# If you experience problems switching back to 80x25 (or a derived mode),
833745b8439SSascha Wildner# the following option might help.
834745b8439SSascha Wildner#options	VGA_KEEP_POWERON_MODE	# use power-on settings for 80x25
835745b8439SSascha Wildner
836745b8439SSascha Wildner# If you can dispense with some vga driver features, you may want to
837745b8439SSascha Wildner# use the following options to save some memory.
838745b8439SSascha Wildner#options 	VGA_NO_FONT_LOADING	# don't save/load font
839745b8439SSascha Wildner#options 	VGA_NO_MODE_CHANGE	# don't change video modes
840745b8439SSascha Wildner
841745b8439SSascha Wildner# The following option probably won't work with the LCD displays.
842745b8439SSascha Wildneroptions 	VGA_WIDTH90		# support 90 column modes
843745b8439SSascha Wildner
844745b8439SSascha Wildner# Splash screen at start up!  Screen savers require this too.
845745b8439SSascha Wildnerpseudo-device	splash
846745b8439SSascha Wildner
847745b8439SSascha Wildner# The syscons console driver (sco color console compatible).
84820e2cd35SImre Vadászdevice		sc0	at nexus?
849745b8439SSascha Wildneroptions 	MAXCONS=16		# number of virtual consoles
850745b8439SSascha Wildneroptions 	SC_ALT_MOUSE_IMAGE	# simplified mouse cursor in text mode
851745b8439SSascha Wildneroptions 	SC_DEBUG_LEVEL=5	# enable debug output
852745b8439SSascha Wildneroptions 	SC_DFLT_FONT		# compile font in
853745b8439SSascha Wildnermakeoptions	SC_DFLT_FONT=cp850
854745b8439SSascha Wildneroptions 	SC_DISABLE_DDBKEY	# disable `debug' key
855745b8439SSascha Wildneroptions 	SC_DISABLE_REBOOT	# disable reboot key sequence
856745b8439SSascha Wildneroptions 	SC_HISTORY_SIZE=200	# number of history buffer lines
857745b8439SSascha Wildneroptions 	SC_MOUSE_CHAR=0x3	# char code for text mode mouse cursor
858745b8439SSascha Wildneroptions 	SC_PIXEL_MODE		# add support for the raster text mode
859745b8439SSascha Wildner
860745b8439SSascha Wildner# The following options will let you change the default colors of syscons.
861745b8439SSascha Wildneroptions 	SC_NORM_ATTR="(FG_GREEN|BG_BLACK)"
862745b8439SSascha Wildneroptions 	SC_NORM_REV_ATTR="(FG_YELLOW|BG_GREEN)"
863745b8439SSascha Wildneroptions 	SC_KERNEL_CONS_ATTR="(FG_RED|BG_BLACK)"
864745b8439SSascha Wildneroptions 	SC_KERNEL_CONS_REV_ATTR="(FG_BLACK|BG_RED)"
865909252ebSImre Vadászoptions 	SC_BORDER_COLOR="FG_BLACK"
866745b8439SSascha Wildner
867745b8439SSascha Wildner# If you have a two button mouse, you may want to add the following option
868745b8439SSascha Wildner# to use the right button of the mouse to paste text.
869745b8439SSascha Wildneroptions 	SC_TWOBUTTON_MOUSE
870745b8439SSascha Wildner
871745b8439SSascha Wildner# You can selectively disable features in syscons.
872745b8439SSascha Wildner#options 	SC_NO_CUTPASTE
873745b8439SSascha Wildner#options 	SC_NO_FONT_LOADING
874745b8439SSascha Wildner#options 	SC_NO_HISTORY
875745b8439SSascha Wildner#options 	SC_NO_SYSMOUSE
876745b8439SSascha Wildner
877745b8439SSascha Wildner#
87817f3d27aSSascha Wildner# SCSI host adapters
879745b8439SSascha Wildner#
880745b8439SSascha Wildner# adv: All Narrow SCSI bus AdvanSys controllers.
881745b8439SSascha Wildner# adw: Second Generation AdvanSys controllers including the ADV940UW.
882745b8439SSascha Wildner# bt: Most Buslogic controllers
883745b8439SSascha Wildner#
884745b8439SSascha Wildner# Note that the order is important in order for Buslogic cards to be
885745b8439SSascha Wildner# probed correctly.
886745b8439SSascha Wildner#
887745b8439SSascha Wildner
88817f3d27aSSascha Wildnerdevice		bt
889e19e3c77SSascha Wildnerdevice		adv
890745b8439SSascha Wildnerdevice		adw
891745b8439SSascha Wildner
892745b8439SSascha Wildner#
893745b8439SSascha Wildner# Adaptec FSA RAID controllers, including integrated DELL controller,
894745b8439SSascha Wildner# the Dell PERC 2/QC and the HP NetRAID-4M
895745b8439SSascha Wildner#
896745b8439SSascha Wildnerdevice		aac
897745b8439SSascha Wildneroptions		AAC_DEBUG
898745b8439SSascha Wildnerdevice		aacp	# SCSI Passthrough interface (optional, CAM required)
899745b8439SSascha Wildner
900745b8439SSascha Wildner#
901745b8439SSascha Wildner# Compaq Smart RAID, Mylex DAC960 and AMI MegaRAID controllers.  Only
902745b8439SSascha Wildner# one entry is needed; the code will find and configure all supported
903745b8439SSascha Wildner# controllers.
904745b8439SSascha Wildner#
905745b8439SSascha Wildnerdevice		ida		# Compaq Smart RAID
906745b8439SSascha Wildnerdevice		mlx		# Mylex DAC960
907745b8439SSascha Wildnerdevice		amr		# AMI MegaRAID
908745b8439SSascha Wildnerdevice		amrp		# SCSI Passthrough interface (optional, CAM req.)
9092063b358SSascha Wildneroptions		AMR_DEBUG=3
910745b8439SSascha Wildnerdevice		mfi		# LSI MegaRAID SAS
911745b8439SSascha Wildnerdevice		mfip		# LSI MegaRAID SAS passthrough, requires CAM
912745b8439SSascha Wildneroptions 	MFI_DEBUG
913745b8439SSascha Wildner
914745b8439SSascha Wildner#
9156d743f04SSascha Wildner# LSI MegaRAID 6Gb/s and 12Gb/s SAS+SATA RAID controller driver
9166d743f04SSascha Wildner#
9176d743f04SSascha Wildnerdevice		mrsas
9186d743f04SSascha Wildner
9196d743f04SSascha Wildner#
920745b8439SSascha Wildner# Areca RAID (CAM is required).
921745b8439SSascha Wildner#
922745b8439SSascha Wildnerdevice		arcmsr		# Areca SATA II RAID
923745b8439SSascha Wildner
924745b8439SSascha Wildner#
925745b8439SSascha Wildner# Highpoint RocketRAID 182x.
926745b8439SSascha Wildnerdevice		hptmv
927745b8439SSascha Wildner
928745b8439SSascha Wildner#
9290e32bd08SSascha Wildner# Highpoint RocketRAID.  Supports RR172x, RR222x, RR2240, RR232x, RR2340,
9300e32bd08SSascha Wildner# RR2210, RR174x, RR2522, RR231x, RR230x.
9310e32bd08SSascha Wildnerdevice		hptrr
9320e32bd08SSascha Wildner
9330e32bd08SSascha Wildner#
9340f74dae5SSascha Wildner# Highpoint RocketRAID 27xx.
9350f74dae5SSascha Wildnerdevice		"hpt27xx"
9360f74dae5SSascha Wildner
9370f74dae5SSascha Wildner#
938745b8439SSascha Wildner# Highpoint RocketRaid 3xxx series SATA RAID
939745b8439SSascha Wildnerdevice		hptiop
940745b8439SSascha Wildner
941745b8439SSascha Wildner#
942745b8439SSascha Wildner# 3ware ATA RAID
943745b8439SSascha Wildner#
944745b8439SSascha Wildnerdevice		twe		# 3ware ATA RAID
945745b8439SSascha Wildnerdevice		twa		# 3ware 9000 series PATA/SATA RAID
946745b8439SSascha Wildneroptions 	TWA_DEBUG=10	# enable debug messages
947745b8439SSascha Wildnerdevice		tws		# 3ware 9750 series SATA/SAS RAID
948745b8439SSascha Wildner
949745b8439SSascha Wildner#
950745b8439SSascha Wildner# IBM ServeRAID
951745b8439SSascha Wildner#
952745b8439SSascha Wildnerdevice	ips
953745b8439SSascha Wildner
954745b8439SSascha Wildner# AHCI driver, this will override NATA for AHCI devices,
955745b8439SSascha Wildner# both drivers may be included.
956745b8439SSascha Wildner#
957745b8439SSascha Wildnerdevice		ahci
958745b8439SSascha Wildner
959743e39a3SMatthew Dillon# NVME driver
960743e39a3SMatthew Dillon#
961743e39a3SMatthew Dillondevice          nvme
962743e39a3SMatthew Dillon
963745b8439SSascha Wildner# SiI3124/3132 driver
964745b8439SSascha Wildner#
965745b8439SSascha Wildnerdevice		sili
966745b8439SSascha Wildner
967df75ede4SSascha Wildner# The 'NATA' driver supports all ATA and ATAPI devices.
968df75ede4SSascha Wildner# You only need one "device nata" for it to find all
969df75ede4SSascha Wildner# PCI ATA/ATAPI devices on modern machines.
970df75ede4SSascha Wildner#
971745b8439SSascha Wildnerdevice		nata
972745b8439SSascha Wildnerdevice		natadisk	# ATA disk drives
973745b8439SSascha Wildnerdevice		natapicd	# ATAPI CD/DVD drives
974745b8439SSascha Wildnerdevice		natapifd	# ATAPI floppy drives
975745b8439SSascha Wildnerdevice		natapist	# ATAPI tape drives
976745b8439SSascha Wildnerdevice		natapicam	# ATAPI CAM layer emulation
977745b8439SSascha Wildnerdevice		nataraid	# support for ATA software RAID controllers
978745b8439SSascha Wildner
979df75ede4SSascha Wildner# The following options are valid for the NATA driver:
980745b8439SSascha Wildner#
981745b8439SSascha Wildner# ATA_STATIC_ID:	controller numbering is static (like the old driver)
982745b8439SSascha Wildner#			else the device numbers are dynamically allocated.
983f64a2d0fSSascha Wildner# ATA_NO_*:		leave out support for the specified controller brand
984e3d8000aSSascha Wildner#
985745b8439SSascha Wildneroptions 	ATA_STATIC_ID
986f64a2d0fSSascha Wildner#options 	ATA_NO_ACARD
987f64a2d0fSSascha Wildner#options 	ATA_NO_ACERLABS
988f64a2d0fSSascha Wildner#options 	ATA_NO_AHCI
989f64a2d0fSSascha Wildner#options 	ATA_NO_AMD
990f64a2d0fSSascha Wildner#options 	ATA_NO_CYPRESS
991f64a2d0fSSascha Wildner#options 	ATA_NO_CYRIX
992f64a2d0fSSascha Wildner#options 	ATA_NO_HIGHPOINT
993f64a2d0fSSascha Wildner#options 	ATA_NO_INTEL
994f64a2d0fSSascha Wildner#options 	ATA_NO_ITE
995f64a2d0fSSascha Wildner#options 	ATA_NO_JMICRON
996f64a2d0fSSascha Wildner#options 	ATA_NO_MARVELL
997f64a2d0fSSascha Wildner#options 	ATA_NO_NATIONAL
998f64a2d0fSSascha Wildner#options 	ATA_NO_NETCELL
999f64a2d0fSSascha Wildner#options 	ATA_NO_NVIDIA
1000f64a2d0fSSascha Wildner#options 	ATA_NO_PROMISE
1001f64a2d0fSSascha Wildner#options 	ATA_NO_SERVERWORKS
1002f64a2d0fSSascha Wildner#options 	ATA_NO_SILICONIMAGE
1003f64a2d0fSSascha Wildner#options 	ATA_NO_SIS
1004f64a2d0fSSascha Wildner#options 	ATA_NO_VIA
1005745b8439SSascha Wildner
1006745b8439SSascha Wildner# For older non-PCI systems, these are the lines to use:
1007df75ede4SSascha Wildner#
1008df75ede4SSascha Wildner#device		nata0	at isa? port IO_WD1 irq 14
1009df75ede4SSascha Wildner#device		nata1	at isa? port IO_WD2 irq 15
1010745b8439SSascha Wildner
1011745b8439SSascha Wildner#
10120bc821c6Szrj# Standard floppy disk controllers: `fdc' and `fd' (see fdc(4))
1013745b8439SSascha Wildner#
10140bc821c6Szrjdevice		fdc0	at isa? port IO_FD1 irq 6 drq 2
1015745b8439SSascha Wildner#
1016745b8439SSascha Wildner# FDC_DEBUG enables floppy debugging.  Since the debug output is huge, you
1017745b8439SSascha Wildner# gotta turn it actually on by setting the variable fd_debug with DDB,
1018745b8439SSascha Wildner# however.
10190bc821c6Szrjoptions 	FDC_DEBUG
1020745b8439SSascha Wildner
10210bc821c6Szrjdevice		fd0	at fdc0 drive 0
10220bc821c6Szrjdevice		fd1	at fdc0 drive 1
10230bc821c6Szrj
10240bc821c6Szrj# LMC/SBE LMC1504 quad T1/E1 driver
10250bc821c6Szrj#
10260bc821c6Szrjdevice		musycc
1027745b8439SSascha Wildner
1028745b8439SSascha Wildner#
1029745b8439SSascha Wildner# sio: serial ports (see sio(4))
1030745b8439SSascha Wildner
1031745b8439SSascha Wildnerdevice		sio0	at isa? port IO_COM1 flags 0x10 irq 4
1032745b8439SSascha Wildner
1033745b8439SSascha Wildner#
1034745b8439SSascha Wildner# `flags' for serial drivers that support consoles (only for sio now):
1035745b8439SSascha Wildner#	0x10	enable console support for this unit.  The other console flags
1036745b8439SSascha Wildner#		are ignored unless this is set.  Enabling console support does
1037745b8439SSascha Wildner#		not make the unit the preferred console - boot with -h or set
1038745b8439SSascha Wildner#		the 0x20 flag for that.  Currently, at most one unit can have
1039745b8439SSascha Wildner#		console support; the first one (in config file order) with
1040745b8439SSascha Wildner#		this flag set is preferred.  Setting this flag for sio0 gives
1041745b8439SSascha Wildner#		the old behaviour.
1042745b8439SSascha Wildner#	0x20	force this unit to be the console (unless there is another
1043745b8439SSascha Wildner#		higher priority console).  This replaces the COMCONSOLE option.
1044745b8439SSascha Wildner#	0x40	reserve this unit for low level console operations.  Do not
1045745b8439SSascha Wildner#		access the device in any normal way.
1046745b8439SSascha Wildner#	0x80	use this port for serial line gdb support in ddb.
1047745b8439SSascha Wildner#
1048745b8439SSascha Wildner
1049745b8439SSascha Wildner# Options for serial drivers that support consoles (only for sio now):
1050745b8439SSascha Wildneroptions 	BREAK_TO_DEBUGGER	#a BREAK on a comconsole goes to
1051745b8439SSascha Wildner					#DDB, if available.
1052745b8439SSascha Wildneroptions 	CONSPEED=115200		# speed for serial console
1053745b8439SSascha Wildner					# (default 9600)
1054745b8439SSascha Wildner
1055745b8439SSascha Wildner# Solaris implements a new BREAK which is initiated by a character
1056745b8439SSascha Wildner# sequence CR ~ ^b which is similar to a familiar pattern used on
1057745b8439SSascha Wildner# Sun servers by the Remote Console.
1058745b8439SSascha Wildneroptions 	ALT_BREAK_TO_DEBUGGER
1059745b8439SSascha Wildner
1060745b8439SSascha Wildner# Options for sio:
1061745b8439SSascha Wildneroptions 	COM_ESP			#code for Hayes ESP
1062745b8439SSascha Wildneroptions 	COM_MULTIPORT		#code for some cards with shared IRQs
1063745b8439SSascha Wildner
1064745b8439SSascha Wildner# Other flags for sio that aren't documented in the man page.
1065745b8439SSascha Wildner#	0x20000	enable hardware RTS/CTS and larger FIFOs.  Only works for
1066745b8439SSascha Wildner#		ST16650A-compatible UARTs.
1067745b8439SSascha Wildner
10683323f1c7SSascha Wildner# PCI Universal Communications driver
10693323f1c7SSascha Wildner# Supports various single and multi port PCI serial cards. Maybe later
10703323f1c7SSascha Wildner# also the parallel ports on combination serial/parallel cards. New cards
10713323f1c7SSascha Wildner# can be added in src/sys/dev/misc/puc/pucdata.c.
10723323f1c7SSascha Wildnerdevice		puc
10733323f1c7SSascha Wildner
1074745b8439SSascha Wildner#
107509ab7e4eSSascha Wildner# Network interfaces: `is', `lnc'
1076745b8439SSascha Wildner#
1077745b8439SSascha Wildner# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 & Am79C960)
1078745b8439SSascha Wildner# sbsh: Granch SBNI16 SHDSL modem PCI adapters
1079ba3d86e7SSascha Wildner# vmx: VMware VMXNET3 Ethernet (BSD open source)
1080745b8439SSascha Wildner# wi: Lucent WaveLAN/IEEE 802.11 PCMCIA adapters. Note: this supports both
1081745b8439SSascha Wildner#     the PCMCIA and ISA cards: the ISA card is really a PCMCIA to ISA
1082745b8439SSascha Wildner#     bridge with a PCMCIA adapter plugged into it.
1083745b8439SSascha Wildner# xe: Xircom/Intel EtherExpress Pro100/16 PC Card ethernet controller.
1084745b8439SSascha Wildner#
1085e19e3c77SSascha Wildnerdevice lnc
1086745b8439SSascha Wildnerdevice sln
1087e19e3c77SSascha Wildnerdevice sn
1088745b8439SSascha Wildner
1089745b8439SSascha Wildner# Wlan support is mandatory for some wireless LAN devices.
1090745b8439SSascha Wildneroptions 	IEEE80211_DEBUG		#enable debugging msgs
1091745b8439SSascha Wildneroptions 	IEEE80211_SUPPORT_MESH	#enable 802.11s D3.0 support
1092745b8439SSascha Wildneroptions 	IEEE80211_SUPPORT_TDMA	#enable TDMA support
1093745b8439SSascha Wildnerdevice		wlan		# 802.11 support
1094745b8439SSascha Wildnerdevice		wlan_acl	# 802.11 MAC-based access control for AP
1095745b8439SSascha Wildnerdevice		wlan_ccmp	# 802.11 CCMP support
1096745b8439SSascha Wildnerdevice		wlan_tkip	# 802.11 TKIP support
1097745b8439SSascha Wildnerdevice		wlan_wep	# 802.11 WEP support
1098745b8439SSascha Wildnerdevice		wlan_xauth	# 802.11 WPA or 802.1x authentication for AP
1099745b8439SSascha Wildnerdevice		wlan_amrr	# 802.11 AMRR TX rate control algorithm
1100745b8439SSascha Wildnerdevice		ath		# Atheros AR521x
110150a82a17SSascha Wildneroptions		AH_AR5416_INTERRUPT_MITIGATION
110250a82a17SSascha Wildneroptions		AH_ASSERT
110350a82a17SSascha Wildneroptions		AH_DEBUG
110450a82a17SSascha Wildneroptions		AH_INTERRUPT_DEBUGGING
110550a82a17SSascha Wildneroptions		AH_MAXCHAN=96
110650a82a17SSascha Wildneroptions		AH_NEED_DESC_SWAP
110750a82a17SSascha Wildneroptions		AH_PRIVATE_DIAG
110850a82a17SSascha Wildneroptions		AH_RXCFG_SDMAMW_4BYTES
1109745b8439SSascha Wildneroptions		AH_SUPPORT_AR5416
111050a82a17SSascha Wildneroptions		AH_SUPPORT_AR9130
111150a82a17SSascha Wildneroptions		AH_SUPPORT_AR9330
111250a82a17SSascha Wildneroptions		AH_SUPPORT_AR9340
111350a82a17SSascha Wildneroptions		AH_USE_INIPDGAIN
1114745b8439SSascha Wildnerdevice		ath_hal		# Atheros Hardware Access Layer
1115745b8439SSascha Wildner#device		ath_rate_amrr	# Atheros AMRR TX rate control algorithm
1116745b8439SSascha Wildner#device		ath_rate_onoe	# Atheros Onoe TX rate control algorithm
1117745b8439SSascha Wildnerdevice		ath_rate_sample	# Atheros Sample TX rate control algorithm
1118745b8439SSascha Wildneroptions		ATH_DEBUG	# turn on debugging output (see hw.ath.debug)
1119745b8439SSascha Wildneroptions		ATH_DIAGAPI	# diagnostic interface to the HAL
112050a82a17SSascha Wildneroptions		ATH_ENABLE_DFS
112150a82a17SSascha Wildneroptions		ATH_KTR_INTR_DEBUG
1122a0ab8429SImre Vadaszdevice		siba_bwn	# Sonic Inc. Silicon Backplane needed for bwn
1123a0ab8429SImre Vadaszoptions		SIBA_DEBUG	# turn on debugging output
1124a0ab8429SImre Vadaszdevice		bwn		# Broadcom BCM43xx NICs using v4 firmware
1125a0ab8429SImre Vadaszoptions		BWN_DEBUG	# turn on debugging output
1126a0ab8429SImre Vadaszoptions		BWN_RXRING_SLOTS=128	# number of RX slots to allocate
1127a0ab8429SImre Vadaszoptions		BWN_TXRING_SLOTS=128	# number of TX slots to allocate
1128745b8439SSascha Wildnerdevice		iwi		# Intel PRO/Wireless 2200BG/2915ABG
11290ce37bc4SImre Vadászdevice		iwm		# Intel Dual Band Wireless AC 316x/726x/826x
113077f295e6SSascha Wildneroptions		IWM_DEBUG	# turn on debugging output
1131745b8439SSascha Wildnerdevice		iwn		# Intel WiFi Link 4965/1000/5000/5150/5300/6000/6050
1132459cf836SSascha Wildneroptions		IWN_DEBUG	# turn on debugging output
1133745b8439SSascha Wildnerdevice		wi		# WaveLAN/IEEE, PRISM-II, Spectrum24 802.11DS
1134745b8439SSascha Wildnerdevice		xe		# Xircom PCMCIA
1135745b8439SSascha Wildnerdevice		ral		# Ralink Technology 802.11 wireless NIC
1136745b8439SSascha Wildnerdevice		wpi
113777f295e6SSascha Wildneroptions		WPI_DEBUG	# turn on debugging output
1138745b8439SSascha Wildner
1139745b8439SSascha Wildner# IEEE 802.11 adapter firmware modules
1140745b8439SSascha Wildner
1141745b8439SSascha Wildner# iwifw:	Intel PRO/Wireless 2200BG/2225BG/2915ABG firmware
1142de5b132cSImre Vadász# iwmfw		Intel Dual Band Wireless AC 3160/3165/3168/7260/7265/8260/8265
1143745b8439SSascha Wildner# iwnfw:	Intel WiFi Link 4965/1000/5000/5150/5300/6000/6050
1144745b8439SSascha Wildner# ralfw:	Ralink Technology RT25xx and RT26xx firmware
1145745b8439SSascha Wildner# wpifw:	Intel 3945ABG Wireless LAN Controller firmware
1146745b8439SSascha Wildner
1147745b8439SSascha Wildnerdevice		iwifw
1148e4216dc3SSascha Wildnerdevice		iwmfw
1149745b8439SSascha Wildnerdevice		iwnfw
1150745b8439SSascha Wildnerdevice		ralfw
1151745b8439SSascha Wildnerdevice		wpifw
1152745b8439SSascha Wildner
1153745b8439SSascha Wildner# Bluetooth Protocols
1154745b8439SSascha Wildnerdevice		bluetooth
1155745b8439SSascha Wildner
1156745b8439SSascha Wildner# Sound drivers
1157745b8439SSascha Wildner#
1158745b8439SSascha Wildner
1159745b8439SSascha Wildner# Basic sound card support:
11602a1ad637SFrançois Tigeotdevice		sound
116143f215d7SSascha Wildner# For PCI sound cards:
1162745b8439SSascha Wildnerdevice		"snd_als4000"
1163745b8439SSascha Wildnerdevice		"snd_atiixp"
1164745b8439SSascha Wildnerdevice		"snd_cmi"
1165745b8439SSascha Wildnerdevice		"snd_cs4281"
1166745b8439SSascha Wildnerdevice		"snd_emu10k1"
11672a1ad637SFrançois Tigeotdevice		"snd_emu10kx"
11683c0a9cdfSSascha Wildnerdevice		"snd_envy24"
11693c0a9cdfSSascha Wildnerdevice		"snd_envy24ht"
1170745b8439SSascha Wildnerdevice		"snd_es137x"
1171745b8439SSascha Wildnerdevice		"snd_fm801"
1172745b8439SSascha Wildnerdevice		"snd_hda"
11732a1ad637SFrançois Tigeotdevice		"snd_hdspe"
1174745b8439SSascha Wildnerdevice		"snd_ich"
1175745b8439SSascha Wildnerdevice		"snd_maestro"
1176745b8439SSascha Wildnerdevice		"snd_neomagic"
1177745b8439SSascha Wildnerdevice		"snd_solo"
11783c0a9cdfSSascha Wildnerdevice		"snd_spicds"
1179745b8439SSascha Wildnerdevice		"snd_t4dwave"
1180745b8439SSascha Wildnerdevice		"snd_via8233"
1181745b8439SSascha Wildnerdevice		"snd_via82c686"
1182745b8439SSascha Wildnerdevice		"snd_vibes"
118385e23b67SSascha Wildner# USB
118485e23b67SSascha Wildnerdevice		"snd_uaudio"
118585e23b67SSascha Wildner
118685e23b67SSascha Wildner#
118785e23b67SSascha Wildner# Following options are intended for debugging/testing purposes:
118885e23b67SSascha Wildner#
118985e23b67SSascha Wildner# SND_DEBUG                    Enable extra debugging code that includes
119085e23b67SSascha Wildner#                              sanity checking and possible increase of
119185e23b67SSascha Wildner#                              verbosity.
119285e23b67SSascha Wildner#
119385e23b67SSascha Wildner# SND_DIAGNOSTIC               Similar in a spirit of INVARIANTS/DIAGNOSTIC,
119485e23b67SSascha Wildner#                              zero tolerance against inconsistencies.
119585e23b67SSascha Wildner#
119685e23b67SSascha Wildner# SND_FEEDER_MULTIFORMAT       By default, only 16/32 bit feeders are compiled
119785e23b67SSascha Wildner#                              in. This options enable most feeder converters
119885e23b67SSascha Wildner#                              except for 8bit. WARNING: May bloat the kernel.
119985e23b67SSascha Wildner#
120085e23b67SSascha Wildner# SND_FEEDER_FULL_MULTIFORMAT  Ditto, but includes 8bit feeders as well.
120185e23b67SSascha Wildner#
120285e23b67SSascha Wildner# SND_FEEDER_RATE_HP           (feeder_rate) High precision 64bit arithmetic
120385e23b67SSascha Wildner#                              as much as possible (the default trying to
120485e23b67SSascha Wildner#                              avoid it). Possible slowdown.
120585e23b67SSascha Wildner#
120685e23b67SSascha Wildner# SND_OLDSTEREO                Only 2 channels are allowed, effectively
120785e23b67SSascha Wildner#                              disabling multichannel processing.
120885e23b67SSascha Wildner#
12092a1ad637SFrançois Tigeotoptions		SND_DEBUG
121085e23b67SSascha Wildner#options		SND_DIAGNOSTIC
12112a1ad637SFrançois Tigeotoptions		SND_FEEDER_MULTIFORMAT
12122a1ad637SFrançois Tigeotoptions		SND_FEEDER_FULL_MULTIFORMAT
12132a1ad637SFrançois Tigeotoptions		SND_FEEDER_RATE_HP
12142a1ad637SFrançois Tigeotoptions		SND_OLDSTEREO
1215745b8439SSascha Wildner
1216745b8439SSascha Wildner#
1217745b8439SSascha Wildner# Miscellaneous hardware:
1218745b8439SSascha Wildner#
1219745b8439SSascha Wildner# bktr: Brooktree bt848/848a/849a/878/879 video capture and TV Tuner board
122023832f75SSepherosa Ziehau# coremctl: Intel Core/E3 memory controller (required by ecc(4) and memtemp(4))
122123832f75SSepherosa Ziehau# dimm: Location inforamtion (required by ecc(4) and memtemp(4))
1222e147701eSSascha Wildner# ecc: ECC memory controller
122353a374c1SSascha Wildner# ipmi: Intelligent Platform Management Interface
1224745b8439SSascha Wildner# joy: joystick
1225745b8439SSascha Wildner# nmdm: nullmodem terminal driver (see nmdm(4))
1226f1e3af6cSSascha Wildner# tpm: Trusted Platform Module
1227745b8439SSascha Wildner
1228745b8439SSascha Wildner# Notes on the Specialix SI/XIO driver:
1229745b8439SSascha Wildner#  **This is NOT a Specialix supported Driver!**
1230745b8439SSascha Wildner#  The host card is memory, not IO mapped.
1231745b8439SSascha Wildner#  The Rev 1 host cards use a 64K chunk, on a 32K boundary.
1232745b8439SSascha Wildner#  The Rev 2 host cards use a 32K chunk, on a 32K boundary.
1233745b8439SSascha Wildner#  The cards can use an IRQ of 11, 12 or 15.
1234745b8439SSascha Wildner
1235f7409137SSepherosa Ziehaudevice		coremctl
1236881f7bffSSepherosa Ziehaudevice		dimm
1237e147701eSSascha Wildnerdevice		ecc
1238745b8439SSascha Wildnerdevice		joy0	at isa? port IO_GAME
1239745b8439SSascha Wildner# nullmodem terminal driver
1240745b8439SSascha Wildnerdevice		nmdm
1241f1e3af6cSSascha Wildnerdevice		tpm
124253a374c1SSascha Wildnerdevice		ipmi
1243745b8439SSascha Wildner
1244745b8439SSascha Wildner# The adw driver will attempt to use memory mapped I/O for all PCI
1245745b8439SSascha Wildner# controllers that have it configured only if this option is set.
1246745b8439SSascha Wildneroptions 	ADW_ALLOW_MEMIO
1247745b8439SSascha Wildner
1248745b8439SSascha Wildner#
1249745b8439SSascha Wildner# PCI devices & PCI options:
1250745b8439SSascha Wildner#
1251745b8439SSascha Wildner# The main PCI bus device is `pci'.  It provides auto-detection and
1252745b8439SSascha Wildner# configuration support for all devices on the PCI bus, using either
1253745b8439SSascha Wildner# configuration mode defined in the PCI specification.
1254745b8439SSascha Wildner
1255745b8439SSascha Wildnerdevice		pci
1256745b8439SSascha Wildner
1257745b8439SSascha Wildner# AGP GART support
1258745b8439SSascha Wildner#
1259745b8439SSascha Wildnerdevice		agp
1260745b8439SSascha Wildner
12617f9ec87cSFrançois Tigeot#
12627f9ec87cSFrançois Tigeot# AGP debugging.
12637f9ec87cSFrançois Tigeot#
12647f9ec87cSFrançois Tigeotoptions                AGP_DEBUG
1265745b8439SSascha Wildner
1266745b8439SSascha Wildner# The `amd' device provides support for the AMD 53C974 SCSI host
1267745b8439SSascha Wildner# adapter chip as found on devices such as the Tekram DC-390(T).
1268745b8439SSascha Wildner#
1269745b8439SSascha Wildner# The `bge' device provides support for gigabit ethernet adapters
1270745b8439SSascha Wildner# based on the Broadcom BCM570x family of controllers, including the
1271745b8439SSascha Wildner# 3Com 3c996-T, the Netgear GA302T, the SysKonnect SK-9D21 and SK-9D41,
1272745b8439SSascha Wildner# and the embedded gigE NICs on Dell PowerEdge 2550 servers.
1273745b8439SSascha Wildner#
1274745b8439SSascha Wildner# The `ncr' device provides support for the NCR 53C810 and 53C825
1275745b8439SSascha Wildner# self-contained SCSI host adapters.
1276745b8439SSascha Wildner#
1277745b8439SSascha Wildner# The `isp' device provides support for the Qlogic ISP 1020, 1040
1278745b8439SSascha Wildner# nd 1040B PCI SCSI host adapters, ISP 1240 Dual Ultra SCSI,
1279745b8439SSascha Wildner# ISP 1080 and 1280 (Dual) Ultra2, ISP 12160 Ultra3 SCSI, as well as
1280745b8439SSascha Wildner# the Qlogic ISP 2100 and ISP 2200 Fibre Channel Host Adapters.
1281745b8439SSascha Wildner#
1282745b8439SSascha Wildner# The `dc' device provides support for PCI fast ethernet adapters
1283745b8439SSascha Wildner# based on the DEC/Intel 21143 and various workalikes including:
1284745b8439SSascha Wildner# the ADMtek AL981 Comet and AN985 Centaur, the ASIX Electronics
1285745b8439SSascha Wildner# AX88140A and AX88141, the Davicom DM9100 and DM9102, the Lite-On
1286745b8439SSascha Wildner# 82c168 and 82c169 PNIC, the Lite-On/Macronix LC82C115 PNIC II
1287745b8439SSascha Wildner# and the Macronix 98713/98713A/98715/98715A/98725 PMAC. This driver
1288745b8439SSascha Wildner# replaces the old al, ax, dm, pn and mx drivers.  List of brands:
1289745b8439SSascha Wildner# Digital DE500-BA, Kingston KNE100TX, D-Link DFE-570TX, SOHOware SFA110,
1290745b8439SSascha Wildner# SVEC PN102-TX, CNet Pro110B, 120A, and 120B, Compex RL100-TX,
1291745b8439SSascha Wildner# LinkSys LNE100TX, LNE100TX V2.0, Jaton XpressNet, Alfa Inc GFC2204,
1292745b8439SSascha Wildner# KNE110TX.
1293745b8439SSascha Wildner#
1294745b8439SSascha Wildner# The `de' device provides support for the Digital Equipment DC21040
1295745b8439SSascha Wildner# self-contained Ethernet adapter.
1296745b8439SSascha Wildner#
1297745b8439SSascha Wildner# The `em' device provides support for the Intel Pro/1000 Family of Gigabit
1298745b8439SSascha Wildner# adapters (82542, 82543, 82544, 82540).
1299745b8439SSascha Wildner#
1300745b8439SSascha Wildner# The `et' device provides support for the Agere ET1310 10/100/1000 PCIe
1301745b8439SSascha Wildner# adapters.
1302745b8439SSascha Wildner#
1303745b8439SSascha Wildner# The `fxp' device provides support for the Intel EtherExpress Pro/100B
1304745b8439SSascha Wildner# PCI Fast Ethernet adapters.
1305745b8439SSascha Wildner#
1306745b8439SSascha Wildner# The 'lge' device provides support for PCI gigabit ethernet adapters
1307745b8439SSascha Wildner# based on the Level 1 LXT1001 NetCellerator chipset. This includes the
1308745b8439SSascha Wildner# D-Link DGE-500SX, SMC TigerCard 1000 (SMC9462SX), and some Addtron cards.
1309745b8439SSascha Wildner#
1310745b8439SSascha Wildner# The 'my' device provides support for the Myson MTD80X and MTD89X PCI
1311745b8439SSascha Wildner# Fast Ethernet adapters.
1312745b8439SSascha Wildner#
1313745b8439SSascha Wildner# The 'nge' device provides support for PCI gigabit ethernet adapters
1314745b8439SSascha Wildner# based on the National Semiconductor DP83820 and DP83821 chipset. This
1315745b8439SSascha Wildner# includes the SMC EZ Card 1000 (SMC9462TX), D-Link DGE-500T, Asante
1316745b8439SSascha Wildner# FriendlyNet GigaNIX 1000TA and 1000TPC, the Addtron AEG320T, the
1317745b8439SSascha Wildner# LinkSys EG1032 and EG1064, the Surecom EP-320G-TX and the Netgear GA622T.
1318745b8439SSascha Wildner#
1319229aec1cSSascha Wildner# The 'oce' device provides support for Emulex 10 Gbit adapters
1320229aec1cSSascha Wildner# (OneConnect Ethernet).
1321229aec1cSSascha Wildner#
1322745b8439SSascha Wildner# The 'pcn' device provides support for PCI fast ethernet adapters based
1323745b8439SSascha Wildner# on the AMD Am79c97x chipsets, including the PCnet/FAST, PCnet/FAST+,
1324745b8439SSascha Wildner# PCnet/PRO and PCnet/Home. These were previously handled by the lnc
1325745b8439SSascha Wildner# driver (and still will be if you leave this driver out of the kernel).
1326745b8439SSascha Wildner#
1327745b8439SSascha Wildner# Te 're' device provides support for PCI GigaBit ethernet adapters based
1328745b8439SSascha Wildner# on the RealTek 8169 chipset. It also supports the 8139C+ and is the
1329745b8439SSascha Wildner# preferred driver for that chip.
1330745b8439SSascha Wildner#
1331745b8439SSascha Wildner# The 'rl' device provides support for PCI fast ethernet adapters based
1332745b8439SSascha Wildner# on the RealTek 8129/8139 chipset. Note that the RealTek driver defaults
1333745b8439SSascha Wildner# to using programmed I/O to do register accesses because memory mapped
1334745b8439SSascha Wildner# mode seems to cause severe lockups on SMP hardware. This driver also
1335745b8439SSascha Wildner# supports the Accton EN1207D `Cheetah' adapter, which uses a chip called
1336745b8439SSascha Wildner# the MPX 5030/5038, which is either a RealTek in disguise or a RealTek
1337745b8439SSascha Wildner# workalike.  Note that the D-Link DFE-530TX+ uses the RealTek chipset
1338745b8439SSascha Wildner# and is supported by this driver, not the 'vr' driver.
1339745b8439SSascha Wildner#
1340745b8439SSascha Wildner# The 'sf' device provides support for Adaptec Duralink PCI fast
1341745b8439SSascha Wildner# ethernet adapters based on the Adaptec AIC-6915 "starfire" controller.
1342745b8439SSascha Wildner# This includes dual and quad port cards, as well as one 100baseFX card.
1343745b8439SSascha Wildner# Most of these are 64-bit PCI devices, except for one single port
1344745b8439SSascha Wildner# card which is 32-bit.
1345745b8439SSascha Wildner#
1346745b8439SSascha Wildner# The 'ste' device provides support for adapters based on the Sundance
1347745b8439SSascha Wildner# Technologies ST201 PCI fast ethernet controller. This includes the
1348745b8439SSascha Wildner# D-Link DFE-550TX.
1349745b8439SSascha Wildner#
1350745b8439SSascha Wildner# The 'sis' device provides support for adapters based on the Silicon
1351745b8439SSascha Wildner# Integrated Systems SiS 900 and SiS 7016 PCI fast ethernet controller
1352745b8439SSascha Wildner# chips.
1353745b8439SSascha Wildner#
1354745b8439SSascha Wildner# The 'sk' device provides support for the SysKonnect SK-984x series
1355745b8439SSascha Wildner# PCI gigabit ethernet NICs. This includes the SK-9841 and SK-9842
1356745b8439SSascha Wildner# single port cards (single mode and multimode fiber) and the
1357745b8439SSascha Wildner# SK-9843 and SK-9844 dual port cards (also single mode and multimode).
1358745b8439SSascha Wildner# The driver will autodetect the number of ports on the card and
1359745b8439SSascha Wildner# attach each one as a separate network interface.
1360745b8439SSascha Wildner#
1361745b8439SSascha Wildner# The 'ti' device provides support for PCI gigabit ethernet NICs based
1362745b8439SSascha Wildner# on the Alteon Networks Tigon 1 and Tigon 2 chipsets. This includes the
1363745b8439SSascha Wildner# Alteon AceNIC, the 3Com 3c985, the Netgear GA620 and various others.
1364745b8439SSascha Wildner# Note that you will probably want to bump up NMBCLUSTERS a lot to use
1365745b8439SSascha Wildner# this driver.
1366745b8439SSascha Wildner#
1367745b8439SSascha Wildner# The 'tl' device provides support for the Texas Instruments TNETE100
1368745b8439SSascha Wildner# series 'ThunderLAN' cards and integrated ethernet controllers. This
1369745b8439SSascha Wildner# includes several Compaq Netelligent 10/100 cards and the built-in
1370745b8439SSascha Wildner# ethernet controllers in several Compaq Prosignia, Proliant and
1371745b8439SSascha Wildner# Deskpro systems. It also supports several Olicom 10Mbps and 10/100
1372745b8439SSascha Wildner# boards.
1373745b8439SSascha Wildner#
1374745b8439SSascha Wildner# The `tx' device provides support for the SMC 9432 TX, BTX and FTX cards.
1375745b8439SSascha Wildner#
1376745b8439SSascha Wildner# The `txp' device provides support for the 3Com 3cR990 "Typhoon"
1377745b8439SSascha Wildner# 10/100 adapters.
1378745b8439SSascha Wildner#
1379745b8439SSascha Wildner# The `vr' device provides support for various fast ethernet adapters
1380745b8439SSascha Wildner# based on the VIA Technologies VT3043 `Rhine I' and VT86C100A `Rhine II'
1381745b8439SSascha Wildner# chips, including the D-Link DFE530TX (see 'rl' for DFE530TX+), the Hawking
1382745b8439SSascha Wildner# Technologies PN102TX, and the AOpen/Acer ALN-320.
1383745b8439SSascha Wildner#
1384745b8439SSascha Wildner# The `wb' device provides support for various fast ethernet adapters
1385745b8439SSascha Wildner# based on the Winbond W89C840F chip. Note: this is not the same as
1386745b8439SSascha Wildner# the Winbond W89C940F, which is an NE2000 clone.
1387745b8439SSascha Wildner#
1388745b8439SSascha Wildner# The `xl' device provides support for the 3Com 3c900, 3c905 and
1389745b8439SSascha Wildner# 3c905B (Fast) Etherlink XL cards and integrated controllers. This
1390745b8439SSascha Wildner# includes the integrated 3c905B-TX chips in certain Dell Optiplex and
1391745b8439SSascha Wildner# Dell Precision desktop machines and the integrated 3c905-TX chips
1392745b8439SSascha Wildner# in Dell Latitude laptop docking stations.
1393745b8439SSascha Wildner#
1394745b8439SSascha Wildner# The 'bktr' device is a PCI video capture device using the Brooktree
1395745b8439SSascha Wildner# bt848/bt848a/bt849a/bt878/bt879 chipset. When used with a TV Tuner it forms a
1396745b8439SSascha Wildner# TV card, eg Miro PC/TV, Hauppauge WinCast/TV WinTV, VideoLogic Captivator,
1397745b8439SSascha Wildner# Intel Smart Video III, AverMedia, IMS Turbo, FlyVideo.
1398745b8439SSascha Wildner#
1399745b8439SSascha Wildner# options 	OVERRIDE_CARD=xxx
1400745b8439SSascha Wildner# options 	OVERRIDE_TUNER=xxx
1401745b8439SSascha Wildner# options 	OVERRIDE_MSP=1
1402745b8439SSascha Wildner# options 	OVERRIDE_DBX=1
1403745b8439SSascha Wildner# These options can be used to override the auto detection
1404745b8439SSascha Wildner# The current values for xxx are found in src/sys/dev/video/bktr/bktr_card.h
1405745b8439SSascha Wildner# Using sysctl(8) run-time overrides on a per-card basis can be made
1406745b8439SSascha Wildner#
1407745b8439SSascha Wildner# options 	BKTR_SYSTEM_DEFAULT=BROOKTREE_PAL
1408745b8439SSascha Wildner# or
1409745b8439SSascha Wildner# options 	BKTR_SYSTEM_DEFAULT=BROOKTREE_NTSC
14108d67cbb3SSascha Wildner# Specifies the default video capture mode.
1411745b8439SSascha Wildner# This is required for Dual Crystal (28&35Mhz) boards where PAL is used
1412745b8439SSascha Wildner# to prevent hangs during initialisation.  eg VideoLogic Captivator PCI.
1413745b8439SSascha Wildner#
1414745b8439SSascha Wildner# options 	BKTR_USE_PLL
1415745b8439SSascha Wildner# PAL or SECAM users who have a 28Mhz crystal (and no 35Mhz crystal)
1416745b8439SSascha Wildner# must enable PLL mode with this option. eg some new Bt878 cards.
1417745b8439SSascha Wildner#
1418745b8439SSascha Wildner# options 	BKTR_GPIO_ACCESS
1419745b8439SSascha Wildner# This enable IOCTLs which give user level access to the GPIO port.
1420745b8439SSascha Wildner#
1421745b8439SSascha Wildner# options 	BKTR_NO_MSP_RESET
1422745b8439SSascha Wildner# Prevents the MSP34xx reset. Good if you initialise the MSP in another OS first
1423745b8439SSascha Wildner#
1424745b8439SSascha Wildner# options 	BKTR_430_FX_MODE
1425745b8439SSascha Wildner# Switch Bt878/879 cards into Intel 430FX chipset compatibility mode.
1426745b8439SSascha Wildner#
1427745b8439SSascha Wildner# options 	BKTR_SIS_VIA_MODE
1428745b8439SSascha Wildner# Switch Bt878/879 cards into SIS/VIA chipset compatibility mode which is
1429745b8439SSascha Wildner# needed for some old SiS and VIA chipset motherboards.
1430745b8439SSascha Wildner# This also allows Bt878/879 chips to work on old OPTi (<1997) chipset
1431745b8439SSascha Wildner# motherboards and motherboards with bad or incomplete PCI 2.1 support.
1432745b8439SSascha Wildner# As a rough guess, old = before 1998
1433745b8439SSascha Wildner#
1434745b8439SSascha Wildner# options 	BKTR_NEW_MSP34XX_DRIVER
1435745b8439SSascha Wildner# Use new, more complete initialization scheme for the msp34* soundchip.
1436745b8439SSascha Wildner# Should fix stereo autodetection if the old driver does only output
1437745b8439SSascha Wildner# mono sound.
1438745b8439SSascha Wildner#
1439745b8439SSascha Wildner# options	BKTR_OVERRIDE_CARD=xxx
1440745b8439SSascha Wildner# options	BKTR_OVERRIDE_DBX=xxx
1441745b8439SSascha Wildner# options	BKTR_OVERRIDE_MSP=xxx
1442745b8439SSascha Wildner# options	BKTR_OVERRIDE_TUNER=xxx
1443745b8439SSascha Wildner# These options can be used to select a specific device, regardless of
1444745b8439SSascha Wildner# the autodetection and i2c device checks (see comments in bktr_card.c).
1445745b8439SSascha Wildner#
1446745b8439SSascha Wildnerdevice		amd		# AMD 53C974 (Tekram DC-390(T))
1447745b8439SSascha Wildnerdevice		isp		# Qlogic family
1448745b8439SSascha Wildnerdevice		ispfw		# Firmware for QLogic HBAs
1449fd501800SSascha Wildnerdevice		mpr		# LSI-Logic MPT-Fusion 3
1450745b8439SSascha Wildnerdevice		mps		# LSI-Logic MPT-Fusion 2
1451fd501800SSascha Wildnerdevice		mpt		# LSI '909 FC adapters
1452745b8439SSascha Wildnerdevice		ncr		# NCR/Symbios Logic
1453745b8439SSascha Wildnerdevice		sym		# NCR/Symbios Logic (newer chipsets)
1454745b8439SSascha Wildnerdevice		trm		# Tekram DC395U/UW/F and DC315U
1455745b8439SSascha Wildner#
1456745b8439SSascha Wildner# Options for ISP
1457745b8439SSascha Wildner#
1458745b8439SSascha Wildner#	ISP_TARGET_MODE		-	enable target mode operation
1459745b8439SSascha Wildner#options 	ISP_TARGET_MODE=1
1460745b8439SSascha Wildner
146147a69c3fSSascha Wildner# Options used in dev/disk/sym/ (Symbios SCSI driver).
1462745b8439SSascha Wildner#options 	SYM_SETUP_LP_PROBE_MAP	#-Low Priority Probe Map (bits)
1463745b8439SSascha Wildner					# Allows the ncr to take precedence
1464745b8439SSascha Wildner					# 1 (1<<0) -> 810a, 860
1465745b8439SSascha Wildner					# 2 (1<<1) -> 825a, 875, 885, 895
1466745b8439SSascha Wildner					# 4 (1<<2) -> 895a, 896, 1510d
1467745b8439SSascha Wildner#options 	SYM_SETUP_SCSI_DIFF	#-HVD support for 825a, 875, 885
1468745b8439SSascha Wildner					# disabled:0 (default), enabled:1
1469745b8439SSascha Wildner#options 	SYM_SETUP_PCI_PARITY	#-PCI parity checking
1470745b8439SSascha Wildner					# disabled:0, enabled:1 (default)
1471745b8439SSascha Wildner#options 	SYM_SETUP_MAX_LUN	#-Number of LUNs supported
1472745b8439SSascha Wildner					# default:8, range:[1..64]
1473745b8439SSascha Wildner
1474745b8439SSascha Wildner
1475745b8439SSascha Wildner# MII bus support is required for some PCI 10/100 ethernet NICs,
1476745b8439SSascha Wildner# namely those which use MII-compliant transceivers or implement
1477745b8439SSascha Wildner# transceiver control interfaces that operate like an MII. Adding
1478745b8439SSascha Wildner# "device miibus0" to the kernel config pulls in support for
1479745b8439SSascha Wildner# the generic miibus API and all of the PHY drivers, including a
1480745b8439SSascha Wildner# generic one for PHYs that aren't specifically handled by an
1481745b8439SSascha Wildner# individual driver.
1482745b8439SSascha Wildnerdevice		miibus
1483745b8439SSascha Wildner
1484745b8439SSascha Wildner# PCI Ethernet NICs that use the common MII bus controller code.
1485745b8439SSascha Wildnerdevice		ae		# Attansic/Atheros L2 Fast Ethernet
1486745b8439SSascha Wildnerdevice		alc		# Atheros AR8131/AR8132
1487745b8439SSascha Wildnerdevice		ale		# Atheros AR8121/AR8113/AR8114
1488745b8439SSascha Wildnerdevice		age		# Attansic/Atheros L1 Gigabit Ethernet
1489745b8439SSascha Wildnerdevice		bce		# Broadcom NetXtreme II Gigabit Ethernet
1490745b8439SSascha Wildnerdevice		bfe		# Broadcom BCM440x 10/100 Ethernet
14916c8d8eccSSepherosa Ziehaudevice		bnx		# Broadcom NetXtreme 5718/57785 Gigabit Ethernet
1492745b8439SSascha Wildnerdevice		dc		# DEC/Intel 21143 and various workalikes
1493745b8439SSascha Wildnerdevice		fxp		# Intel EtherExpress PRO/100B (82557, 82558)
1494745b8439SSascha Wildnerdevice		my		# Myson Fast Ethernet (MTD80X, MTD89X)
1495745b8439SSascha Wildnerdevice		pcn		# AMD Am79C97x PCI 10/100 NICs
1496745b8439SSascha Wildnerdevice		re		# RealTek 8139C+/8169
1497745b8439SSascha Wildnerdevice		rl		# RealTek 8129/8139
1498745b8439SSascha Wildnerdevice		sbsh		# Granch SBNI16 SHDSL modem
1499745b8439SSascha Wildnerdevice		sf		# Adaptec AIC-6915 (``Starfire'')
1500745b8439SSascha Wildnerdevice		sis		# Silicon Integrated Systems SiS 900/SiS 7016
1501745b8439SSascha Wildnerdevice		ste		# Sundance ST201 (D-Link DFE-550TX)
1502745b8439SSascha Wildnerdevice		tl		# Texas Instruments ThunderLAN
1503745b8439SSascha Wildnerdevice		tx		# SMC EtherPower II (83c17x ``EPIC'')
1504745b8439SSascha Wildnerdevice		vge		# VIA 612x GigE
1505745b8439SSascha Wildnerdevice		vr		# VIA Rhine, Rhine II
1506745b8439SSascha Wildnerdevice		wb		# Winbond W89C840F
1507745b8439SSascha Wildnerdevice		xl		# 3Com 3c90x (``Boomerang'', ``Cyclone'')
1508745b8439SSascha Wildner
1509745b8439SSascha Wildner# PCI Ethernet NICs.
1510745b8439SSascha Wildnerdevice		de		# DEC/Intel DC21x4x (``Tulip'')
1511745b8439SSascha Wildnerdevice		txp		# 3Com 3cR990 (``Typhoon'')
1512745b8439SSascha Wildner
1513745b8439SSascha Wildner# Gigabit Ethernet NICs.
1514745b8439SSascha Wildnerdevice		bge		# Broadcom BCM570x (``Tigon III'')
1515745b8439SSascha Wildnerdevice		em		# Intel Pro/1000 (8254x,8257x)
1516745b8439SSascha Wildner				# Requires ig_hal
1517745b8439SSascha Wildnerdevice		emx		# Intel Pro/1000 (8257{1,2,3,4})
1518745b8439SSascha Wildner				# Requires ig_hal
15191f7e3916SSepherosa Ziehaudevice		igb		# Intel Pro/1000 (82575, 82576, 82580, i350)
15201f7e3916SSepherosa Ziehau				# Requires ig_hal
1521745b8439SSascha Wildnerdevice		ig_hal		# Intel Pro/1000 hardware abstraction layer
152279251f5eSSepherosa Ziehaudevice		ix		# Intel PRO/10GbE PCIE Ethernet Family
1523745b8439SSascha Wildnerdevice		et		# Agere ET1310 10/100/1000 Ethernet
1524745b8439SSascha Wildnerdevice		lge		# Level 1 LXT1001 (``Mercury'')
1525745b8439SSascha Wildnerdevice		mxge		# Myricom Myri-10G 10GbE NIC
1526d81f1b78SJan Sucandevice		mxgefw		# Firmware for Myricom Myri-10G 10GbE NIC
1527745b8439SSascha Wildnerdevice		nfe		# nVidia nForce2/3 MCP04/51/55 CK804
1528745b8439SSascha Wildnerdevice		nge		# NatSemi DP83820 and DP83821
1529229aec1cSSascha Wildnerdevice		oce		# Emulex 10 GbE (OneConnect Ethernet)
1530745b8439SSascha Wildnerdevice		sk		# SysKonnect GEnesis, LinkSys EG1023, D-Link
1531745b8439SSascha Wildnerdevice		ti		# Alteon (``Tigon I'', ``Tigon II'')
1532745b8439SSascha Wildnerdevice		stge		# Sundance/Tamarack TC9021 Gigabit Ethernet
1533745b8439SSascha Wildnerdevice		msk		# Marvell/SysKonnect Yukon II Gigabit Ethernet
1534745b8439SSascha Wildnerdevice		jme		# JMicron Gigabit/Fast Ethernet
1535745b8439SSascha Wildner
1536745b8439SSascha Wildner# Brooktree driver has been ported to the new I2C framework. Thus,
1537745b8439SSascha Wildner# you'll need to have the following 3 lines in the kernel config.
1538745b8439SSascha Wildner#     device smbus
1539745b8439SSascha Wildner#     device iicbus
1540745b8439SSascha Wildner#     device iicbb
1541745b8439SSascha Wildner# The iic and smb devices are only needed if you want to control other
1542745b8439SSascha Wildner# I2C slaves connected to the external connector of some cards.
1543745b8439SSascha Wildner#
1544745b8439SSascha Wildnerdevice		bktr
1545745b8439SSascha Wildneroptions 	BKTR_NEW_MSP34XX_DRIVER
1546745b8439SSascha Wildner
1547745b8439SSascha Wildner# WinTV PVR-250/350 driver
1548745b8439SSascha Wildnerdevice		cxm
1549745b8439SSascha Wildner
1550745b8439SSascha Wildner#
1551745b8439SSascha Wildner# PCCARD/PCMCIA
1552745b8439SSascha Wildner#
1553745b8439SSascha Wildner# pccard: pccard slots
1554745b8439SSascha Wildner# cardbus/cbb: cardbus bridge
1555745b8439SSascha Wildnerdevice		pccard
1556745b8439SSascha Wildnerdevice		cardbus
1557745b8439SSascha Wildnerdevice		cbb
1558745b8439SSascha Wildner
1559745b8439SSascha Wildner#
1560745b8439SSascha Wildner# MMC/SD
1561745b8439SSascha Wildner#
1562745b8439SSascha Wildner# mmc 		MMC/SD bus
1563745b8439SSascha Wildner# mmcsd		MMC/SD memory card
1564745b8439SSascha Wildner# sdhci		Generic PCI SD Host Controller
1565745b8439SSascha Wildner#
1566745b8439SSascha Wildnerdevice		mmc
1567745b8439SSascha Wildnerdevice		mmcsd
1568745b8439SSascha Wildnerdevice		sdhci
1569745b8439SSascha Wildner
1570745b8439SSascha Wildner#
1571745b8439SSascha Wildner# SMB bus
1572745b8439SSascha Wildner#
1573745b8439SSascha Wildner# System Management Bus support is provided by the 'smbus' device.
1574745b8439SSascha Wildner# Access to the SMBus device is via the 'smb' device (/dev/smb*),
1575745b8439SSascha Wildner# which is a child of the 'smbus' device.
1576745b8439SSascha Wildner#
1577745b8439SSascha Wildner# Supported devices:
1578745b8439SSascha Wildner# smb		standard io through /dev/smb*
1579745b8439SSascha Wildner#
158098eefd6fSImre Vadász# ACPI support:
158198eefd6fSImre Vadász# smbacpi	support for ACPI I2cSerialBus resources
158298eefd6fSImre Vadász#
1583745b8439SSascha Wildner# Supported SMB interfaces:
1584745b8439SSascha Wildner# iicsmb	I2C to SMB bridge with any iicbus interface
1585745b8439SSascha Wildner# bktr		brooktree848 I2C hardware interface
1586745b8439SSascha Wildner# intpm		Intel PIIX4 (82371AB, 82443MX) Power Management Unit
1587745b8439SSascha Wildner# alpm		Acer Aladdin-IV/V/Pro2 Power Management Unit
15888ceadc27SSascha Wildner# ichiic	Intel generation 4 I2C controller
1589745b8439SSascha Wildner# ichsmb	Intel ICH SMBus controller chips (82801AA, 82801AB, 82801BA)
1590745b8439SSascha Wildner# viapm		VIA VT82C586B,596,686A and VT8233 SMBus controllers
1591745b8439SSascha Wildner# amdpm		AMD 756 Power Management Unit
1592745b8439SSascha Wildner# amdsmb	AMD 8111 SMBus 2.0 Controller
1593745b8439SSascha Wildner#
1594745b8439SSascha Wildnerdevice		smbus		# Bus support, required for smb below.
1595745b8439SSascha Wildner
1596745b8439SSascha Wildnerdevice		intpm
1597745b8439SSascha Wildnerdevice		alpm
15988ceadc27SSascha Wildnerdevice		ichiic
1599745b8439SSascha Wildnerdevice		ichsmb
1600745b8439SSascha Wildnerdevice		viapm
1601745b8439SSascha Wildnerdevice		amdpm
1602745b8439SSascha Wildnerdevice		amdsmb
1603745b8439SSascha Wildner
1604745b8439SSascha Wildnerdevice		smb
1605745b8439SSascha Wildner
160698eefd6fSImre Vadászdevice		smbacpi
160798eefd6fSImre Vadász
1608745b8439SSascha Wildner#
1609745b8439SSascha Wildner# I2C Bus
1610745b8439SSascha Wildner#
1611745b8439SSascha Wildner# Philips i2c bus support is provided by the `iicbus' device.
1612745b8439SSascha Wildner#
1613745b8439SSascha Wildner# Supported devices:
1614745b8439SSascha Wildner# ic	i2c network interface
1615745b8439SSascha Wildner# iic	i2c standard io
1616745b8439SSascha Wildner# iicsmb i2c to smb bridge. Allow i2c i/o with smb commands.
1617745b8439SSascha Wildner#
1618745b8439SSascha Wildner# Supported interfaces:
1619745b8439SSascha Wildner# pcf	Philips PCF8584 ISA-bus controller
1620745b8439SSascha Wildner# bktr	brooktree848 I2C software interface
1621745b8439SSascha Wildner#
1622745b8439SSascha Wildner# Other:
1623745b8439SSascha Wildner# iicbb	generic I2C bit-banging code (needed by lpbb, bktr)
1624745b8439SSascha Wildner#
1625745b8439SSascha Wildnerdevice		iicbus		# Bus support, required for ic/iic/iicsmb below.
1626745b8439SSascha Wildnerdevice		iicbb
1627745b8439SSascha Wildner
1628745b8439SSascha Wildnerdevice		ic
1629745b8439SSascha Wildnerdevice		iic
1630745b8439SSascha Wildnerdevice		iicsmb		# smb over i2c bridge
1631745b8439SSascha Wildner
1632745b8439SSascha Wildnerdevice		pcf0	at isa? port 0x320 irq 5
1633745b8439SSascha Wildner
163473e10c03SSepherosa Ziehau# Intel performance-energy bias
163573e10c03SSepherosa Ziehaudevice		perfbias
163673e10c03SSepherosa Ziehau
1637e76f5e73SSepherosa Ziehau# Intel software controlled clock modulation
1638e76f5e73SSepherosa Ziehaudevice		clockmod
1639e76f5e73SSepherosa Ziehau
1640309b1170SImre Vadász# Intel Sandy Bridge and newer CPUs power usage estimation
1641309b1170SImre Vadászdevice		corepower
1642309b1170SImre Vadász
1643745b8439SSascha Wildner# Intel Core and newer CPUs on-die digital thermal sensor support
1644745b8439SSascha Wildnerdevice		coretemp
1645745b8439SSascha Wildner
16467698c759SSepherosa Ziehau# Memory thermal sensor
16477698c759SSepherosa Ziehaudevice		memtemp
16487698c759SSepherosa Ziehau
1649d4ef6694SJoris Giovannangeli# CPU control pseudo-device. Provides access to MSRs, CPUID info and
1650d4ef6694SJoris Giovannangeli# microcode update feature.
1651d4ef6694SJoris Giovannangelidevice		cpuctl
1652d4ef6694SJoris Giovannangeli
1653d5d72874SSepherosa Ziehau# Effective CPU frequency interface via APERF/MPERF MSRs
1654d5d72874SSepherosa Ziehaudevice		aperf
1655d5d72874SSepherosa Ziehau
1656745b8439SSascha Wildner# AMD Family 0Fh, 10h and 11h temperature sensors
1657745b8439SSascha Wildnerdevice		kate
1658745b8439SSascha Wildnerdevice		km
1659745b8439SSascha Wildner
1660745b8439SSascha Wildner# ThinkPad Active Protection System accelerometer
1661745b8439SSascha Wildnerdevice		aps0	at isa? port 0x1600
1662745b8439SSascha Wildner
1663745b8439SSascha Wildner# HW monitoring devices lm(4), it(4) and nsclpcsio.
1664745b8439SSascha Wildnerdevice		lm0	at isa? port 0x290
1665745b8439SSascha Wildnerdevice		it0	at isa? port 0x290
1666745b8439SSascha Wildnerdevice		it1	at isa? port 0xc00
1667745b8439SSascha Wildnerdevice		it2	at isa? port 0xd00
1668745b8439SSascha Wildnerdevice		it3	at isa?	port 0x228
1669745b8439SSascha Wildnerdevice		nsclpcsio0 at isa? port 0x2e
1670745b8439SSascha Wildnerdevice		nsclpcsio1 at isa? port 0x4e
1671745b8439SSascha Wildnerdevice		wbsio0	at isa? port 0x2e
1672745b8439SSascha Wildnerdevice		wbsio1	at isa? port 0x4e
1673745b8439SSascha Wildnerdevice		uguru0	at isa? port 0xe0	# ABIT uGuru
1674745b8439SSascha Wildner
16752e2c9b13SSascha Wildner# EFI Runtime Services support (not functional yet).
16762e2c9b13SSascha Wildneroptions 	EFIRT
16772e2c9b13SSascha Wildner
1678745b8439SSascha Wildner# Parallel-Port Bus
1679745b8439SSascha Wildner#
1680745b8439SSascha Wildner# Parallel port bus support is provided by the `ppbus' device.
1681745b8439SSascha Wildner# Multiple devices may be attached to the parallel port, devices
1682745b8439SSascha Wildner# are automatically probed and attached when found.
1683745b8439SSascha Wildner#
1684745b8439SSascha Wildner# Supported devices:
1685745b8439SSascha Wildner# vpo	Iomega Zip Drive
1686745b8439SSascha Wildner#	Requires SCSI disk support ('scbus' and 'da'); the best
1687745b8439SSascha Wildner#	performance is achieved with ports in EPP 1.9 mode.
1688745b8439SSascha Wildner# lpt	Parallel Printer
1689745b8439SSascha Wildner# plip	Parallel network interface
1690745b8439SSascha Wildner# ppi	General-purpose I/O ("Geek Port") + IEEE1284 I/O
1691745b8439SSascha Wildner# pps	Pulse per second Timing Interface
1692745b8439SSascha Wildner# lpbb	Philips official parallel port I2C bit-banging interface
1693745b8439SSascha Wildner#
1694745b8439SSascha Wildner# Supported interfaces:
1695745b8439SSascha Wildner# ppc	ISA-bus parallel port interfaces.
1696745b8439SSascha Wildner#
1697745b8439SSascha Wildner
1698745b8439SSascha Wildneroptions 	PPC_PROBE_CHIPSET # Enable chipset specific detection
1699745b8439SSascha Wildner				  # (see flags in ppc(4))
1700745b8439SSascha Wildneroptions 	DEBUG_1284	# IEEE1284 signaling protocol debug
1701745b8439SSascha Wildneroptions 	PERIPH_1284	# Makes your computer act as a IEEE1284
1702745b8439SSascha Wildner				# compliant peripheral
1703745b8439SSascha Wildneroptions 	DONTPROBE_1284	# Avoid boot detection of PnP parallel devices
1704745b8439SSascha Wildneroptions 	VP0_DEBUG	# ZIP/ZIP+ debug
1705745b8439SSascha Wildneroptions 	LPT_DEBUG	# Printer driver debug
1706745b8439SSascha Wildneroptions 	PPC_DEBUG=2	# Parallel chipset level debug
1707745b8439SSascha Wildneroptions 	PLIP_DEBUG	# Parallel network IP interface debug
1708745b8439SSascha Wildneroptions 	PCFCLOCK_VERBOSE         # Verbose pcfclock driver
1709745b8439SSascha Wildneroptions 	PCFCLOCK_MAX_RETRIES=5   # Maximum read tries (default 10)
1710745b8439SSascha Wildner
1711745b8439SSascha Wildnerdevice		ppc0	at isa? irq 7
1712745b8439SSascha Wildnerdevice		ppbus
1713745b8439SSascha Wildnerdevice		vpo
1714745b8439SSascha Wildnerdevice		lpt
1715745b8439SSascha Wildnerdevice		plip
1716745b8439SSascha Wildnerdevice		ppi
1717745b8439SSascha Wildnerdevice		pps
1718745b8439SSascha Wildnerdevice		lpbb
1719745b8439SSascha Wildnerdevice		pcfclock
1720745b8439SSascha Wildner
1721745b8439SSascha Wildner# Kernel BOOTP support
1722745b8439SSascha Wildner
1723745b8439SSascha Wildneroptions 	BOOTP		# Use BOOTP to obtain IP address/hostname
1724745b8439SSascha Wildneroptions 	BOOTP_NFSROOT	# NFS mount root filesystem using BOOTP info
1725745b8439SSascha Wildneroptions 	BOOTP_COMPAT	# Workaround for broken bootp daemons.
1726745b8439SSascha Wildneroptions 	BOOTP_WIRED_TO=fxp0 # Use interface fxp0 for BOOTP
1727745b8439SSascha Wildner
1728745b8439SSascha Wildner# Disable swapping. This option removes all code which actually performs
1729745b8439SSascha Wildner# swapping, so it's not possible to turn it back on at run-time.
1730745b8439SSascha Wildner#
1731745b8439SSascha Wildner# This is sometimes usable for systems which don't have any swap space
1732745b8439SSascha Wildner# (see also sysctls "vm.defer_swapspace_pageouts" and
1733745b8439SSascha Wildner# "vm.disable_swapspace_pageouts")
1734745b8439SSascha Wildner#
1735745b8439SSascha Wildner#options 	NO_SWAPPING
1736745b8439SSascha Wildner
1737745b8439SSascha Wildner# Set the size of the buffer cache KVM reservation, in buffers.  This is
1738745b8439SSascha Wildner# scaled by approximately 16384 bytes.  The system will auto-size the buffer
1739745b8439SSascha Wildner# cache if this option is not specified.
1740745b8439SSascha Wildner#
1741745b8439SSascha Wildneroptions 	NBUF=512
1742745b8439SSascha Wildner
1743745b8439SSascha Wildner# Set the size of the mbuf KVM reservation, in clusters.  This is scaled
1744745b8439SSascha Wildner# by approximately 2048 bytes.  The system will auto-size the mbuf area
1745745b8439SSascha Wildner# to (512 + maxusers*16) if this option is not specified.
1746745b8439SSascha Wildner# maxusers is in turn computed at boot time depending on available memory
1747745b8439SSascha Wildner# or set to the value specified by "options MAXUSERS=x" (x=0 means
1748745b8439SSascha Wildner# autoscaling).
1749745b8439SSascha Wildner# So, to take advantage of autoscaling, you have to remove both
1750745b8439SSascha Wildner# NMBCLUSTERS and MAXUSERS (and NMBUFS) from your kernel config.
1751745b8439SSascha Wildner#
1752745b8439SSascha Wildneroptions 	NMBCLUSTERS=1024
1753745b8439SSascha Wildner
1754745b8439SSascha Wildner# Set the number of mbufs available in the system. Each mbuf
1755745b8439SSascha Wildner# consumes 256 bytes. The system will autosize this (to 4 times
1756745b8439SSascha Wildner# the number of NMBCLUSTERS, depending on other constraints)
1757745b8439SSascha Wildner# if this option is not specified.
1758745b8439SSascha Wildner#
1759745b8439SSascha Wildneroptions 	NMBUFS=4096
1760745b8439SSascha Wildner
1761745b8439SSascha Wildner# Tune the buffer cache maximum KVA reservation, in bytes.  The maximum is
1762745b8439SSascha Wildner# usually capped at 200 MB, effecting machines with > 1GB of ram.  Note
1763745b8439SSascha Wildner# that the buffer cache only really governs write buffering and disk block
1764745b8439SSascha Wildner# translations.  The VM page cache is our primary disk cache and is not
1765745b8439SSascha Wildner# effected by the size of the buffer cache.
1766745b8439SSascha Wildner#
1767745b8439SSascha Wildneroptions 	VM_BCACHE_SIZE_MAX="(100*1024*1024)"
1768745b8439SSascha Wildner
1769745b8439SSascha Wildner# Tune the swap zone KVA reservation, in bytes.  The default is typically
1770745b8439SSascha Wildner# 70 MB, giving the system the ability to manage a maximum of 28GB worth
1771745b8439SSascha Wildner# of swapped out data.
1772745b8439SSascha Wildner#
1773745b8439SSascha Wildneroptions 	VM_SWZONE_SIZE_MAX="(50*1024*1024)"
1774745b8439SSascha Wildner
1775745b8439SSascha Wildner#
1776745b8439SSascha Wildner# Enable extra debugging code for locks.  This stores the filename and
1777745b8439SSascha Wildner# line of whatever acquired the lock in the lock itself, and change a
1778745b8439SSascha Wildner# number of function calls to pass around the relevant data.  This is
1779745b8439SSascha Wildner# not at all useful unless you are debugging lock code.  Also note
1780745b8439SSascha Wildner# that it is likely to break e.g. fstat(1) unless you recompile your
1781745b8439SSascha Wildner# userland with -DDEBUG_LOCKS as well.
1782745b8439SSascha Wildner#
17839ec899f4SSascha Wildner# DEBUG_LOCKS_LATENCY adds a sysctl to add a forced latency loop
17849ec899f4SSascha Wildner# (count to N) in front of any spinlock or gettoken.
17859ec899f4SSascha Wildner#
1786745b8439SSascha Wildneroptions 	DEBUG_LOCKS
17879ec899f4SSascha Wildneroptions		DEBUG_LOCKS_LATENCY
1788745b8439SSascha Wildner
1789745b8439SSascha Wildner# Set the amount of time (in seconds) the system will wait before
1790745b8439SSascha Wildner# rebooting automatically when a kernel panic occurs.  If set to (-1),
1791745b8439SSascha Wildner# the system will wait indefinitely until a key is pressed on the
1792745b8439SSascha Wildner# console.
1793745b8439SSascha Wildneroptions 	PANIC_REBOOT_WAIT_TIME=16
1794745b8439SSascha Wildner
179595b4dba2SSascha Wildner# Specify a lower limit for the number of swap I/O buffers.
1796745b8439SSascha Wildner#
1797745b8439SSascha Wildner#options		NSWBUF_MIN=120
1798745b8439SSascha Wildner
1799745b8439SSascha Wildner# The 'asr' driver provides support for current DPT/Adaptec SCSI RAID
1800745b8439SSascha Wildner# controllers (SmartRAID V and VI and later).
1801745b8439SSascha Wildner# These controllers require the CAM infrastructure.
1802745b8439SSascha Wildner#
1803745b8439SSascha Wildnerdevice		asr
1804745b8439SSascha Wildner
1805745b8439SSascha Wildner# The 'dpt' driver provides support for DPT controllers (http://www.dpt.com/).
1806745b8439SSascha Wildner# These have hardware RAID-{0,1,5} support, and do multi-initiator I/O.
1807745b8439SSascha Wildner# The DPT controllers are commonly re-licensed under other brand-names -
1808745b8439SSascha Wildner# some controllers by Olivetti, Dec, HP, AT&T, SNI, AST, Alphatronic, NEC and
1809745b8439SSascha Wildner# Compaq are actually DPT controllers.
1810745b8439SSascha Wildner#
1811745b8439SSascha Wildner# See src/sys/dev/raid/dpt for debugging and other subtle options.
1812745b8439SSascha Wildner#   DPT_MEASURE_PERFORMANCE Enables a set of (semi)invasive metrics. Various
1813745b8439SSascha Wildner#                           instruments are enabled.  The tools in
1814745b8439SSascha Wildner#                           /usr/sbin/dpt_* assume these to be enabled.
1815745b8439SSascha Wildner#   DPT_HANDLE_TIMEOUTS     Normally device timeouts are handled by the DPT.
1816745b8439SSascha Wildner#                           If you ant the driver to handle timeouts, enable
1817745b8439SSascha Wildner#                           this option.  If your system is very busy, this
1818745b8439SSascha Wildner#                           option will create more trouble than solve.
1819745b8439SSascha Wildner#   DPT_TIMEOUT_FACTOR      Used to compute the excessive amount of time to
1820745b8439SSascha Wildner#                           wait when timing out with the above option.
182147a69c3fSSascha Wildner#  DPT_DEBUG_xxxx           These are controllable from sys/dev/raid/dpt/dpt.h
1822745b8439SSascha Wildner#  DPT_LOST_IRQ             When enabled, will try, once per second, to catch
1823745b8439SSascha Wildner#                           any interrupt that got lost.  Seems to help in some
1824745b8439SSascha Wildner#                           DPT-firmware/Motherboard combinations.  Minimal
1825745b8439SSascha Wildner#                           cost, great benefit.
1826745b8439SSascha Wildner#  DPT_RESET_HBA            Make "reset" actually reset the controller
1827745b8439SSascha Wildner#                           instead of fudging it.  Only enable this if you
1828745b8439SSascha Wildner#			    are 100% certain you need it.
1829745b8439SSascha Wildner
1830745b8439SSascha Wildnerdevice		dpt
1831745b8439SSascha Wildner
1832745b8439SSascha Wildner# DPT options
1833745b8439SSascha Wildner#!CAM# options 	DPT_MEASURE_PERFORMANCE
1834745b8439SSascha Wildner#!CAM# options 	DPT_HANDLE_TIMEOUTS
1835745b8439SSascha Wildneroptions 	DPT_TIMEOUT_FACTOR=4
1836745b8439SSascha Wildneroptions 	DPT_LOST_IRQ
1837745b8439SSascha Wildneroptions 	DPT_RESET_HBA
1838745b8439SSascha Wildner
1839745b8439SSascha Wildner#
1840745b8439SSascha Wildner# Compaq "CISS" RAID controllers (SmartRAID 5* series)
1841745b8439SSascha Wildner# These controllers have a SCSI-like interface, and require the
1842745b8439SSascha Wildner# CAM infrastructure.
1843745b8439SSascha Wildner#
1844745b8439SSascha Wildnerdevice		ciss
1845745b8439SSascha Wildner
1846745b8439SSascha Wildner#
1847745b8439SSascha Wildner# Intel Integrated RAID controllers.
1848745b8439SSascha Wildner# This driver is supported and maintained by
1849745b8439SSascha Wildner# "Leubner, Achim" <Achim_Leubner@adaptec.com>.
1850745b8439SSascha Wildner#
1851745b8439SSascha Wildnerdevice          iir
1852745b8439SSascha Wildner
1853745b8439SSascha Wildner#
1854745b8439SSascha Wildner# Mylex AcceleRAID and eXtremeRAID controllers with v6 and later
1855745b8439SSascha Wildner# firmware.  These controllers have a SCSI-like interface, and require
1856745b8439SSascha Wildner# the CAM infrastructure.
1857745b8439SSascha Wildner#
1858745b8439SSascha Wildnerdevice          mly
1859745b8439SSascha Wildner
1860745b8439SSascha Wildner# USB support
1861886e1e50SSascha Wildner#
1862886e1e50SSascha Wildner
1863745b8439SSascha Wildner# UHCI controller
1864745b8439SSascha Wildnerdevice		uhci
1865745b8439SSascha Wildner# OHCI controller
1866745b8439SSascha Wildnerdevice		ohci
1867745b8439SSascha Wildner# EHCI controller
1868745b8439SSascha Wildnerdevice		ehci
1869b4ea5ff5SSascha Wildner# XHCI controller
1870b4ea5ff5SSascha Wildnerdevice		xhci
1871745b8439SSascha Wildner# General USB code (mandatory for USB)
1872745b8439SSascha Wildnerdevice		usb
1873745b8439SSascha Wildner# Human Interface Device (anything with buttons and dials)
1874745b8439SSascha Wildnerdevice		uhid
1875745b8439SSascha Wildner# USB keyboard
1876745b8439SSascha Wildnerdevice		ukbd
1877745b8439SSascha Wildner# USB printer
1878745b8439SSascha Wildnerdevice		ulpt
18790e20af68SSascha Wildner# USB mass storage (Requires scbus and da)
1880745b8439SSascha Wildnerdevice		umass
1881b4ea5ff5SSascha Wildner# USB mass storage driver for device-side mode
1882b4ea5ff5SSascha Wildnerdevice		usfs
1883745b8439SSascha Wildner# USB modem support
1884745b8439SSascha Wildnerdevice		umodem
1885745b8439SSascha Wildner# USB mouse
1886745b8439SSascha Wildnerdevice		ums
1887b4ea5ff5SSascha Wildner# eGalax USB touch screen
1888b4ea5ff5SSascha Wildnerdevice		uep
188999c3594eSSascha Wildner# Diamond Rio 500 MP3 player
189099c3594eSSascha Wildnerdevice		urio
1891745b8439SSascha Wildner# USB com devices
1892b4ea5ff5SSascha Wildnerdevice		"u3g"
1893745b8439SSascha Wildnerdevice		uark
1894745b8439SSascha Wildnerdevice		ubsa
1895b4ea5ff5SSascha Wildnerdevice		ubser
1896745b8439SSascha Wildnerdevice		uchcom
1897745b8439SSascha Wildnerdevice		ucom
1898b4ea5ff5SSascha Wildnerdevice		ucycom
1899b4ea5ff5SSascha Wildnerdevice		ufoma
1900745b8439SSascha Wildnerdevice		uftdi
1901745b8439SSascha Wildnerdevice		ugensa
1902b4ea5ff5SSascha Wildnerdevice		uipaq
1903b4ea5ff5SSascha Wildnerdevice		umcs
1904745b8439SSascha Wildnerdevice		umct
1905b4ea5ff5SSascha Wildnerdevice		umoscom
1906745b8439SSascha Wildnerdevice		uplcom
1907745b8439SSascha Wildnerdevice		uslcom
1908745b8439SSascha Wildnerdevice		uvisor
1909745b8439SSascha Wildnerdevice		uvscom
1910745b8439SSascha Wildner
1911745b8439SSascha Wildner#
1912b4ea5ff5SSascha Wildner# USB ethernet support
1913b4ea5ff5SSascha Wildnerdevice		uether
1914b4ea5ff5SSascha Wildner#
191579be21c5SSascha Wildner# ADMtek USB ethernet. Supports the LinkSys USB100TX,
191679be21c5SSascha Wildner# the Billionton USB100, the Melco LU-ATX, the D-Link DSB-650TX
191779be21c5SSascha Wildner# and the SMC 2202USB. Also works with the ADMtek AN986 Pegasus
191879be21c5SSascha Wildner# eval board.
191979be21c5SSascha Wildnerdevice		aue
192079be21c5SSascha Wildner#
1921745b8439SSascha Wildner# ASIX Electronics AX88172 USB 2.0 ethernet driver. Used in the
1922745b8439SSascha Wildner# LinkSys USB200M and various other adapters.
1923745b8439SSascha Wildnerdevice		axe
1924b4ea5ff5SSascha Wildner#
19253d2b9530SSascha Wildner# ASIX Electronics AX88178A/AX88179 USB 2.0/3.0 gigabit ethernet driver.
19263d2b9530SSascha Wildnerdevice		axge
19273d2b9530SSascha Wildner#
1928db68bb1bSSascha Wildner# Devices which communicate using Ethernet over USB, particularly
1929db68bb1bSSascha Wildner# Communication Device Class (CDC) Ethernet specification. Supports
1930db68bb1bSSascha Wildner# Sharp Zaurus PDAs, some DOCSIS cable modems and so on.
1931db68bb1bSSascha Wildnerdevice		cdce
1932db68bb1bSSascha Wildner#
193379be21c5SSascha Wildner# CATC USB-EL1201A USB ethernet. Supports the CATC Netmate
193479be21c5SSascha Wildner# and Netmate II, and the Belkin F5U111.
193579be21c5SSascha Wildnerdevice		cue
193679be21c5SSascha Wildner#
193779be21c5SSascha Wildner# USB Apple iPhone/iPad tethered Ethernet driver
193879be21c5SSascha Wildnerdevice		ipheth
193979be21c5SSascha Wildner#
194079be21c5SSascha Wildner# Kawasaki LSI ethernet. Supports the LinkSys USB10T,
194179be21c5SSascha Wildner# Entrega USB-NET-E45, Peracom Ethernet Adapter, the
194279be21c5SSascha Wildner# 3Com 3c19250, the ADS Technologies USB-10BT, the ATen UC10T,
194379be21c5SSascha Wildner# the Netgear EA101, the D-Link DSB-650, the SMC 2102USB
194479be21c5SSascha Wildner# and 2104USB, and the Corega USB-T.
194579be21c5SSascha Wildnerdevice		kue
194679be21c5SSascha Wildner#
1947f8577199SSascha Wildner# Moschip MCS7730/MCS7840 USB to fast ethernet. Supports the Sitecom LN030.
1948f8577199SSascha Wildnerdevice		mos
1949f8577199SSascha Wildner#
1950b4ea5ff5SSascha Wildner# Davicom DM9601E USB to fast ethernet. Supports the Corega FEther USB-TXC.
1951b4ea5ff5SSascha Wildnerdevice		udav
1952745b8439SSascha Wildner
1953745b8439SSascha Wildner# USB wireless NICs, requires wlan_amrr
1954745b8439SSascha Wildner#
1955745b8439SSascha Wildner# Ralink Technology RT2501USB/RT2601USB
1956f794c13fSSascha Wildnerdevice		rum
1957790340eaSSascha Wildner#
195810f2cea7SSascha Wildner# Ralink Technology RT2700U/RT2800U/RT3000U wireless driver
195910f2cea7SSascha Wildnerdevice		run
196010f2cea7SSascha Wildnerdevice		runfw
1961745b8439SSascha Wildner#
1962e4ca69a1SSascha Wildner# RNDIS USB ethernet driver
1963e4ca69a1SSascha Wildnerdevice		urndis
1964e4ca69a1SSascha Wildner#
1965790340eaSSascha Wildner# Realtek RTL8188CU/RTL8192CU wireless driver
1966790340eaSSascha Wildnerdevice		urtwn
1967790340eaSSascha Wildnerdevice		urtwnfw
196877f295e6SSascha Wildneroptions		URTWN_WITHOUT_UCODE
1969745b8439SSascha Wildner
19704596d2c5SSascha Wildner# Fm Radio
19714596d2c5SSascha Wildner#
19724596d2c5SSascha Wildnerdevice		ufm
19734596d2c5SSascha Wildner
1974a7ceaa31SSascha Wildner# Templates for programming USB device side drivers
1975a7ceaa31SSascha Wildner#
1976a7ceaa31SSascha Wildnerdevice		usb_template
1977a7ceaa31SSascha Wildner
1978745b8439SSascha Wildner# debugging options for the USB subsystem
1979745b8439SSascha Wildner#
1980745b8439SSascha Wildneroptions 	USB_DEBUG
1981745b8439SSascha Wildner
1982745b8439SSascha Wildner# options for ukbd:
1983745b8439SSascha Wildneroptions 	UKBD_DFLT_KEYMAP	# specify the built-in keymap
1984745b8439SSascha Wildnermakeoptions	UKBD_DFLT_KEYMAP=it.iso
1985745b8439SSascha Wildner
1986745b8439SSascha Wildner# Firewire support
1987745b8439SSascha Wildnerdevice		firewire	# Firewire bus code
1988745b8439SSascha Wildnerdevice		sbp		# SCSI over Firewire (Requires scbus and da)
1989745b8439SSascha Wildnerdevice		fwe		# Ethernet over Firewire (non-standard!)
1990745b8439SSascha Wildner
1991745b8439SSascha Wildner# dcons support (Dumb Console Device)
1992745b8439SSascha Wildnerdevice		dcons			# dumb console driver
1993745b8439SSascha Wildnerdevice		dcons_crom		# FireWire attachment
1994745b8439SSascha Wildneroptions		DCONS_BUF_SIZE=16384	# buffer size
1995745b8439SSascha Wildneroptions		DCONS_POLL_HZ=100	# polling rate
1996745b8439SSascha Wildneroptions		DCONS_FORCE_CONSOLE=1	# force to be the primary console
1997745b8439SSascha Wildneroptions		DCONS_FORCE_GDB=1	# force to be the gdb device
1998745b8439SSascha Wildner
1999745b8439SSascha Wildner#####################################################################
2000745b8439SSascha Wildner# crypto subsystem
2001745b8439SSascha Wildner#
2002745b8439SSascha Wildner# This is a port of the openbsd crypto framework.  Include this when
2003755d70b8SSascha Wildner# you have a h/w crypto device to accelerate user applications that
2004755d70b8SSascha Wildner# link to openssl.
2005745b8439SSascha Wildner#
2006745b8439SSascha Wildner# Drivers are ports from openbsd with some simple enhancements that have
2007745b8439SSascha Wildner# been fed back to openbsd (and hopefully will be included).
2008745b8439SSascha Wildner
20098ca694c6SSascha Wildnerdevice		crypto		# core crypto support
20108ca694c6SSascha Wildnerdevice		cryptodev	# /dev/crypto for access to h/w
2011745b8439SSascha Wildner
2012745b8439SSascha Wildnerdevice		rndtest		# FIPS 140-2 entropy tester
2013745b8439SSascha Wildner
2014745b8439SSascha Wildnerdevice		hifn		# Hifn 7951, 7781, etc.
2015745b8439SSascha Wildneroptions		HIFN_DEBUG	# enable debugging support: hw.hifn.debug
2016745b8439SSascha Wildner#options	HIFN_NO_RNG	# for devices without RNG
2017745b8439SSascha Wildneroptions		HIFN_RNDTEST	# enable rndtest support
2018745b8439SSascha Wildner
201925638cf4SSascha Wildnerdevice		safe		# SafeNet 1141
202025638cf4SSascha Wildneroptions 	SAFE_DEBUG	# enable debugging support: hw.safe.debug
20218690ff8fSSascha Wildner#options	SAFE_NO_RNG	# for devices without RNG
202225638cf4SSascha Wildneroptions 	SAFE_RNDTEST	# enable rndtest support
202325638cf4SSascha Wildner
2024745b8439SSascha Wildnerdevice		ubsec		# Broadcom 5501, 5601, 58xx
2025745b8439SSascha Wildneroptions		UBSEC_DEBUG	# enable debugging support: hw.ubsec.debug
2026745b8439SSascha Wildner#options	UBSEC_NO_RNG	# for devices without RNG
2027745b8439SSascha Wildneroptions		UBSEC_RNDTEST	# enable rndtest support
2028745b8439SSascha Wildner
2029745b8439SSascha Wildnerdevice		aesni		# hardware crypto/RNG for AES-NI
2030745b8439SSascha Wildnerdevice		padlock		# hardware crypto/RNG for VIA C3/C7/Eden
2031c5761ad0SAlex Hornungdevice		rdrand		# hardware RNG for RdRand
2032745b8439SSascha Wildner
2033745b8439SSascha Wildner#
2034745b8439SSascha Wildner# ACPI support using the Intel ACPI Component Architecture reference
2035745b8439SSascha Wildner# implementation.
2036745b8439SSascha Wildner#
2037745b8439SSascha Wildner# ACPI_DEBUG enables the use of the debug.acpi.level and debug.acpi.layer
2038745b8439SSascha Wildner# kernel environment variables to select initial debugging levels for the
2039745b8439SSascha Wildner# Intel ACPICA code.
2040745b8439SSascha Wildner
2041745b8439SSascha Wildnerdevice		acpi
2042745b8439SSascha Wildneroptions 	ACPI_DEBUG
2043745b8439SSascha Wildner
2044554257bcSSascha Wildner# ACPI WMI Mapping driver
2045554257bcSSascha Wildnerdevice		acpi_wmi
2046554257bcSSascha Wildner
2047745b8439SSascha Wildner# ACPI Asus Extras (LCD backlight/brightness, video output, etc.)
2048745b8439SSascha Wildnerdevice		acpi_asus
2049745b8439SSascha Wildner
2050745b8439SSascha Wildner# ACPI Fujitsu Extras (Buttons)
2051745b8439SSascha Wildnerdevice		acpi_fujitsu
2052745b8439SSascha Wildner
2053745b8439SSascha Wildner# ACPI extras driver for HP laptops
2054554257bcSSascha Wildnerdevice		acpi_hp
2055745b8439SSascha Wildner
2056745b8439SSascha Wildner# ACPI Panasonic Extras (LCD backlight/brightness, video output, etc.)
2057745b8439SSascha Wildnerdevice		acpi_panasonic
2058745b8439SSascha Wildner
20592af72e0aSImre Vadász# ACPI pvpanic driver for virtual machines running in Qemu
20602af72e0aSImre Vadászdevice		acpi_pvpanic
20612af72e0aSImre Vadász
2062745b8439SSascha Wildner# ACPI Sony extra (LCD brightness)
2063745b8439SSascha Wildnerdevice		acpi_sony
2064745b8439SSascha Wildner
2065745b8439SSascha Wildner# ACPI extras driver for ThinkPad laptops
2066745b8439SSascha Wildnerdevice		acpi_thinkpad
2067745b8439SSascha Wildner
2068745b8439SSascha Wildner# ACPI Toshiba Extras (LCD backlight/brightness, video output, etc.)
2069745b8439SSascha Wildnerdevice		acpi_toshiba
2070745b8439SSascha Wildner
2071745b8439SSascha Wildner# ACPI Video Extensions (LCD backlight/brightness, video output, etc.)
2072745b8439SSascha Wildnerdevice		acpi_video
2073745b8439SSascha Wildner
207490980aa5SSascha Wildner# ACPI Docking Station
207590980aa5SSascha Wildnerdevice		acpi_dock
207690980aa5SSascha Wildner
2077745b8439SSascha Wildnerdevice		aibs		# ASUSTeK AI Booster (ACPI ASOC ATK0110)
2078745b8439SSascha Wildner
2079745b8439SSascha Wildner# DRM options:
2080745b8439SSascha Wildner# drm:		General DRM code
20819fbad1e9SSascha Wildner# i915:		Intel integrated GPUs, starting from the 830M family
2082055e60aeSzrj# radeon:	ATI/AMD Radeon cards
2083745b8439SSascha Wildner#
2084745b8439SSascha Wildner# DRM_DEBUG:	include debug printfs, very slow
2085745b8439SSascha Wildner#
2086745b8439SSascha Wildner# DRM requires AGP in the kernel.
2087055e60aeSzrj#
2088055e60aeSzrj# Also you'll need to have the following 3 lines in the kernel config.
2089055e60aeSzrj#	device acpi
2090055e60aeSzrj#	device iicbus
2091055e60aeSzrj#	device iicbb
2092745b8439SSascha Wildner
2093745b8439SSascha Wildnerdevice		drm
20949fbad1e9SSascha Wildner
20959fbad1e9SSascha Wildner# For testing and debugging.
20969fbad1e9SSascha Wildnerdevice		"i915"
20979fbad1e9SSascha Wildnerdevice		radeon
2098745b8439SSascha Wildner
2099745b8439SSascha Wildneroptions 	DRM_DEBUG
21002fc297a3SFrançois Tigeotoptions		VGA_SWITCHEROO
2101745b8439SSascha Wildner
2102745b8439SSascha Wildner#
2103745b8439SSascha Wildner# Misc devices
2104745b8439SSascha Wildner#
2105745b8439SSascha Wildnerdevice		cmx		# Omnikey CardMan 4040 smartcard reader
210621e876fbSFrancois Tigeotdevice		amdsbwd		# AMD South Bridge watchdog
2107745b8439SSascha Wildnerdevice		gpio		# Enable support for the gpio framework
2108ace1ab86SFrancois Tigeotdevice		ichwd		# Intel ICH watchdog interrupt timer
2109ea2c6782SSascha Wildnerdevice		tbridge		# regression testing
2110745b8439SSascha Wildner
2111745b8439SSascha Wildner#
2112723f1311SSascha Wildner# Amazon EC2 support
2113723f1311SSascha Wildner#
2114723f1311SSascha Wildnerdevice		ena
2115723f1311SSascha Wildner
2116723f1311SSascha Wildner#
211782b77854SSepherosa Ziehau# Hyper-V support
211882b77854SSepherosa Ziehau#
211982b77854SSepherosa Ziehaudevice		vmbus
212082b77854SSepherosa Ziehau
212182b77854SSepherosa Ziehau#
2122c3a6e36fSSascha Wildner# Virtio support
2123c3a6e36fSSascha Wildner#
2124fa771eddSSascha Wildnerdevice		virtio		# Generic VirtIO bus/PCI interface (required)
212595fbc42eSDiederik de Grootdevice		virtio_balloon	# VirtIO Memory Balloon device
2126fa771eddSSascha Wildnerdevice		virtio_blk	# VirtIO Block device
2127fa771eddSSascha Wildnerdevice		virtio_random	# VirtIO Entropy device
2128fa771eddSSascha Wildnerdevice		virtio_scsi	# VirtIO SCSI device
2129fa771eddSSascha Wildnerdevice		vtnet		# VirtIO Ethernet device
2130c3a6e36fSSascha Wildner
21311f8b7484SSascha Wildner# VMware support
21321f8b7484SSascha Wildner#
21331f8b7484SSascha Wildnerdevice		vmx		# VMware VMXNET3 Ethernet
21341f8b7484SSascha Wildner
2135c3a6e36fSSascha Wildner#
2136bca7db71SImre Vadász# Gpio support for ACPI based SoC platforms
2137bca7db71SImre Vadász#
2138bca7db71SImre Vadászdevice		gpio_acpi
2139bca7db71SImre Vadászdevice		gpio_intel	# GPIO support for Intel SoCs
2140bca7db71SImre Vadász
2141bca7db71SImre Vadász#
2142745b8439SSascha Wildner# Embedded system options:
2143745b8439SSascha Wildner#
2144745b8439SSascha Wildner# An embedded system might want to run something other than init.
2145745b8439SSascha Wildneroptions 	INIT_PATH="/sbin/init:/sbin/oinit"
2146745b8439SSascha Wildner
2147745b8439SSascha Wildner# Debug options
2148745b8439SSascha Wildneroptions 	BUS_DEBUG       # enable newbus debugging
2149745b8439SSascha Wildneroptions		RSS_DEBUG	# enable RSS (Receive Side Scaling) debugging
2150745b8439SSascha Wildner
2151745b8439SSascha Wildner# Record the program counter of the code interrupted by the statistics
2152745b8439SSascha Wildner# clock interrupt.  Use pctrack(8) to dump this information.
2153745b8439SSascha Wildneroptions		DEBUG_PCTRACK
2154745b8439SSascha Wildner
2155d3d1dd3eSPeeter Must# evdev interface
2156d3d1dd3eSPeeter Mustdevice		evdev		# input event device support
2157d3d1dd3eSPeeter Mustoptions		EVDEV_SUPPORT	# evdev support in legacy drivers
2158d3d1dd3eSPeeter Mustoptions		EVDEV_DEBUG	# enable event debug messages
2159d3d1dd3eSPeeter Must
2160745b8439SSascha Wildner# More undocumented options for linting.
2161745b8439SSascha Wildner# Note that documenting these are not considered an affront.
2162745b8439SSascha Wildner
2163745b8439SSascha Wildner#options	ACPI_NO_SEMAPHORES
2164745b8439SSascha Wildner#options 	BKTR_ALLOC_PAGES=xxx
2165745b8439SSascha Wildneroptions 	CAM_DEBUG_DELAY
2166745b8439SSascha Wildneroptions 	CLUSTERDEBUG
2167745b8439SSascha Wildneroptions 	DEBUG
2168745b8439SSascha Wildneroptions 	DEBUG_CRIT_SECTIONS
2169b42386eeSSepherosa Ziehauoptions		BCE_RSS_DEBUG
2170b42386eeSSepherosa Ziehauoptions		BCE_TSS_DEBUG
2171695a8586SSepherosa Ziehauoptions		BNX_RSS_DEBUG
217269647051SSascha Wildneroptions		BNX_TSO_DEBUG
2173695a8586SSepherosa Ziehauoptions		BNX_TSS_DEBUG
2174745b8439SSascha Wildneroptions		EMX_RSS_DEBUG
21750c0e1638SSepherosa Ziehauoptions		EMX_TSO_DEBUG
2176d84018e9SSepherosa Ziehauoptions		EMX_TSS_DEBUG
2177745b8439SSascha Wildneroptions		JME_RSS_DEBUG
21788d6600daSSepherosa Ziehauoptions		IGB_RSS_DEBUG
21794e19e38aSSepherosa Ziehauoptions		IGB_TSS_DEBUG
21809c0ecdccSSepherosa Ziehauoptions		IGB_MSIX_DEBUG
21810e5f28e9SSascha Wildneroptions		IX_RSS_DEBUG
2182745b8439SSascha Wildneroptions 	ENABLE_ALART
2183745b8439SSascha Wildneroptions 	FB_DEBUG=2
2184745b8439SSascha Wildneroptions 	FB_INSTALL_CDEV
2185745b8439SSascha Wildner#options	IEEE80211_DEBUG_REFCNT
2186745b8439SSascha Wildneroptions		IEEE80211_SUPPORT_SUPERG
2187745b8439SSascha Wildneroptions 	KBDIO_DEBUG=10
2188745b8439SSascha Wildneroptions 	KBD_MAXRETRY=4
2189745b8439SSascha Wildneroptions 	KBD_MAXWAIT=6
2190745b8439SSascha Wildneroptions 	KBD_RESETDELAY=201
2191745b8439SSascha Wildner#options 	KERN_TIMESTAMP
2192745b8439SSascha Wildneroptions 	KEY
2193745b8439SSascha Wildneroptions 	LOCKF_DEBUG
2194745b8439SSascha Wildner#options	MAXFILES=xxx
2195745b8439SSascha Wildneroptions		MBUF_DEBUG
2196ad67a470SSascha Wildneroptions		NO_LWKT_SPLIT_USERPRI
2197745b8439SSascha Wildneroptions 	PANIC_DEBUG
2198745b8439SSascha Wildneroptions 	PMAP_DEBUG
2199745b8439SSascha Wildneroptions 	PSM_DEBUG=4
2200745b8439SSascha Wildneroptions 	SCSI_NCR_DEBUG
2201745b8439SSascha Wildneroptions 	SCSI_NCR_MAX_SYNC=10000
2202745b8439SSascha Wildneroptions 	SCSI_NCR_MAX_WIDE=1
2203745b8439SSascha Wildneroptions 	SCSI_NCR_MYADDR=7
2204603198e6SSascha Wildneroptions		SLAB_DEBUG
2205745b8439SSascha Wildneroptions 	SOCKBUF_DEBUG
2206745b8439SSascha Wildneroptions		TDMA_BINTVAL_DEFAULT=5
2207745b8439SSascha Wildneroptions		TDMA_SLOTCNT_DEFAULT=2
2208745b8439SSascha Wildneroptions		TDMA_SLOTLEN_DEFAULT=10*1000
2209745b8439SSascha Wildneroptions		TDMA_TXRATE_11A_DEFAULT=2*24
2210745b8439SSascha Wildneroptions		TDMA_TXRATE_11B_DEFAULT=2*11
2211745b8439SSascha Wildneroptions		TDMA_TXRATE_11G_DEFAULT=2*24
2212745b8439SSascha Wildneroptions		TDMA_TXRATE_11NA_DEFAULT="(4|IEEE80211_RATE_MCS)"
2213745b8439SSascha Wildneroptions		TDMA_TXRATE_11NG_DEFAULT="(4|IEEE80211_RATE_MCS)"
2214745b8439SSascha Wildneroptions		TDMA_TXRATE_HALF_DEFAULT=2*12
2215745b8439SSascha Wildneroptions		TDMA_TXRATE_QUARTER_DEFAULT=2*6
2216745b8439SSascha Wildneroptions		TDMA_TXRATE_TURBO_DEFAULT=2*24
2217745b8439SSascha Wildner#options 	TIMER_FREQ="((14318182+6)/12)"
2218745b8439SSascha Wildneroptions 	VFS_BIO_DEBUG
2219603198e6SSascha Wildneroptions		VM_PAGE_DEBUG
2220745b8439SSascha Wildneroptions 	XBONEHACK
2221745b8439SSascha Wildner
2222745b8439SSascha Wildneroptions	KTR
2223243308a2SSascha Wildneroptions KTR_ALL
2224243308a2SSascha Wildneroptions	KTR_ENTRIES=1024
2225243308a2SSascha Wildneroptions	KTR_VERBOSE=1
22266836e2b4SSascha Wildner#options KTR_ACPI_EC
2227745b8439SSascha Wildner#options KTR_CTXSW
2228243308a2SSascha Wildner#options KTR_DMCRYPT
2229745b8439SSascha Wildner#options KTR_ETHERNET
2230745b8439SSascha Wildner#options KTR_HAMMER
2231243308a2SSascha Wildner#options KTR_IFQ
2232745b8439SSascha Wildner#options KTR_IF_BGE
2233745b8439SSascha Wildner#options KTR_IF_EM
2234745b8439SSascha Wildner#options KTR_IF_EMX
22350e108e8bSSascha Wildner#options KTR_IF_POLL
2236745b8439SSascha Wildner#options KTR_IF_START
2237745b8439SSascha Wildner#options KTR_IPIQ
2238745b8439SSascha Wildner#options KTR_KERNENTRY
223915ae7f05SSascha Wildner#options KTR_LAPIC
2240745b8439SSascha Wildner#options KTR_MEMORY
2241745b8439SSascha Wildner#options KTR_SERIALIZER
2242b981a49dSSepherosa Ziehau#options KTR_SOWAKEUP
2243745b8439SSascha Wildner#options KTR_SPIN_CONTENTION
2244745b8439SSascha Wildner#options KTR_TESTLOG
2245745b8439SSascha Wildner#options KTR_TOKENS
224695a12b8bSSascha Wildner#options KTR_TSLEEP
22476d688f9bSSepherosa Ziehau#options KTR_UDP
2248d6d39bc7SMihai Carabas#options KTR_USCHED_BSD4
2249d84d3f48SSascha Wildner#options KTR_USCHED_DFLY
2250745b8439SSascha Wildner
2251745b8439SSascha Wildner# ALTQ
2252745b8439SSascha Wildneroptions 	ALTQ		#alternate queueing
2253745b8439SSascha Wildneroptions 	ALTQ_CBQ	#class based queueing
2254745b8439SSascha Wildneroptions 	ALTQ_RED	#random early detection
2255745b8439SSascha Wildneroptions 	ALTQ_RIO	#triple red for diffserv (needs RED)
2256745b8439SSascha Wildneroptions 	ALTQ_HFSC	#hierarchical fair service curve
2257745b8439SSascha Wildneroptions 	ALTQ_PRIQ	#priority queue
2258745b8439SSascha Wildneroptions 	ALTQ_FAIRQ	#fair queue
2259745b8439SSascha Wildner#options 	ALTQ_NOPCC	#don't use processor cycle counter
2260745b8439SSascha Wildneroptions 	ALTQ_DEBUG	#for debugging
2261745b8439SSascha Wildner# you might want to set kernel timer to 1kHz if you use CBQ,
2262745b8439SSascha Wildner# especially with 100baseT
2263745b8439SSascha Wildner#options 	HZ=1000
2264745b8439SSascha Wildner
2265745b8439SSascha Wildner# WATCHDOG
2266745b8439SSascha Wildneroptions		WDOG_DISABLE_ON_PANIC	# Automatically disable watchdogs on panic
2267745b8439SSascha Wildner
2268745b8439SSascha Wildner# LED
2269f2c400e8SImre Vadászdevice		led
2270745b8439SSascha Wildneroptions		ERROR_LED_ON_PANIC	# If an error led is present, light it up on panic
2271