NOTES revision 182912
1123992Ssobomax#
2103026Ssobomax# NOTES -- Lines that can be cut/pasted into kernel and hints configs.
3103026Ssobomax#
4103026Ssobomax# This file contains machine dependent kernel configuration notes.  For
5103026Ssobomax# machine independent notes, look in /sys/conf/NOTES.
6103026Ssobomax#
7103026Ssobomax# $FreeBSD: head/sys/pc98/conf/NOTES 182912 2008-09-10 18:36:58Z jhb $
8103026Ssobomax#
9103026Ssobomax
10103026Ssobomax#
11103026Ssobomax# We want LINT to cover profiling as well.
12103026Ssobomaxprofile         2
13103026Ssobomax
14103026Ssobomax
15103026Ssobomax#####################################################################
16103026Ssobomax# SMP OPTIONS:
17103026Ssobomax#
18103026Ssobomax# The apic device enables the use of the I/O APIC for interrupt delivery.
19103026Ssobomax# The apic device can be used in both UP and SMP kernels, but is required
20103026Ssobomax# for SMP kernels.  Thus, the apic device is not strictly an SMP option,
21103026Ssobomax# but it is a prerequisite for SMP.
22103026Ssobomax#
23103026Ssobomax
24103026Ssobomax# Mandatory:
25103026Ssobomaxdevice		apic			# I/O apic
26103026Ssobomax
27103026Ssobomax#
28103026Ssobomax# Watchdog routines.
29103026Ssobomax#
30103026Ssobomaxoptions 	MP_WATCHDOG
31103026Ssobomax
32103026Ssobomax# Debugging options.
33103026Ssobomax#
34103026Ssobomaxoptions		STOP_NMI		# Stop CPUS using NMI instead of IPI
35103026Ssobomax
36103026Ssobomax
37103026Ssobomax
38103026Ssobomax#####################################################################
39103026Ssobomax# CPU OPTIONS
40103026Ssobomax
41103026Ssobomax#
42103026Ssobomax# You must specify at least one CPU (the one you intend to run on);
43103026Ssobomax# deleting the specification for CPUs you don't need to use may make
44103026Ssobomax# parts of the system run faster.
45103026Ssobomax#
46103026Ssobomaxcpu		I486_CPU
47103026Ssobomaxcpu		I586_CPU		# aka Pentium(tm)
48103026Ssobomaxcpu		I686_CPU		# aka Pentium Pro(tm)
49103394Sbde
50103026Ssobomax#
51122699Sbms# Options for CPU features.
52103026Ssobomax#
53103026Ssobomax# CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning
54103026Ssobomax# CPU if CPU supports it.  The default is double-clock mode on
55103026Ssobomax# BlueLightning CPU box.
56129880Sphk#
57103026Ssobomax# CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM
58103026Ssobomax# BlueLightning CPU.  It works only with Cyrix FPU, and this option
59103026Ssobomax# should not be used with Intel FPU.
60103026Ssobomax#
61103026Ssobomax# CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1).
62103344Sbde#
63103026Ssobomax# CPU_CYRIX_NO_LOCK enables weak locking for the entire address space
64103026Ssobomax# of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1.
65103026Ssobomax# Otherwise, the NO_LOCK bit of CCR1 is cleared.  (NOTE 3)
66130933Sbrooks#
67103026Ssobomax# CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct
68103026Ssobomax# mapped mode.  Default is 2-way set associative mode.
69103026Ssobomax#
70103026Ssobomax# CPU_DISABLE_5X86_LSSER disables load store serialize (i.e., enables
71103026Ssobomax# reorder).  This option should not be used if you use memory mapped
72103026Ssobomax# I/O device(s).
73103026Ssobomax#
74103026Ssobomax# CPU_DISABLE_CMPXCHG disables the CMPXCHG instruction on > i386 IA32
75103026Ssobomax# machines.  VmWare 3.x seems to emulate this instruction poorly, causing
76103026Ssobomax# the guest OS to run very slowly.  This problem appears to be fixed in
77103026Ssobomax# VmWare 4.x, at least in version 4.5.2, so that enabling this option with
78103026Ssobomax# VmWare 4.x will result in locking operations to be 20-30 times slower.
79103026Ssobomax# Enabling this with an SMP kernel will cause the kernel to be unusable.
80103026Ssobomax#
81103026Ssobomax# CPU_DISABLE_SSE explicitly prevents I686_CPU from turning on SSE.
82103026Ssobomax#
83103026Ssobomax# CPU_FASTER_5X86_FPU enables faster FPU exception handler.
84103026Ssobomax#
85103026Ssobomax# CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products
86103026Ssobomax# for i386 machines.
87103026Ssobomax#
88103026Ssobomax# CPU_IORT defines I/O clock delay time (NOTE 1).  Default values of
89103026Ssobomax# I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively
90103026Ssobomax# (no clock delay).
91103026Ssobomax#
92103026Ssobomax# CPU_L2_LATENCY specifies the L2 cache latency value.  This option is used
93103026Ssobomax# only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected.
94103026Ssobomax# The default value is 5.
95103026Ssobomax#
96127307Srwatson# CPU_LOOP_EN prevents flushing the prefetch buffer if the destination
97127307Srwatson# of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE
98127307Srwatson# 1).
99127307Srwatson#
100127307Srwatson# CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs.  This option
101103026Ssobomax# is useful when you use Socket 8 to Socket 370 converter, because most Pentium
102103026Ssobomax# Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs.
103103026Ssobomax#
104103026Ssobomax# CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1).
105105300Salfred#
106105300Salfred# CPU_SUSP_HLT enables suspend on HALT.  If this option is set, CPU
107103032Ssobomax# enters suspend mode following execution of HALT instruction.
108103032Ssobomax#
109103032Ssobomax# CPU_UPGRADE_HW_CACHE eliminates unneeded cache flush instruction(s).
110103026Ssobomax#
111130933Sbrooks# CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD
112103026Ssobomax# K5/K6/K6-2 CPUs.
113103032Ssobomax#
114103026Ssobomax# CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache
115105300Salfred# flush at hold state.
116103026Ssobomax#
117103026Ssobomax# CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs
118103026Ssobomax# without cache flush at hold state, and (2) write-back CPU cache on
119103026Ssobomax# Cyrix 6x86 whose revision < 2.7 (NOTE 2).
120103026Ssobomax#
121103026Ssobomax# NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY
122103026Ssobomax# Pentiums) from locking up when a LOCK CMPXCHG8B instruction is
123103026Ssobomax# executed.  This option is only needed if I586_CPU is also defined,
124103026Ssobomax# and should be included for any non-Pentium CPU that defines it.
125103026Ssobomax#
126103026Ssobomax# NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors
127103026Ssobomax# which indicates that the 15-16MB range is *definitely* not being
128103026Ssobomax# occupied by an ISA memory hole.
129103026Ssobomax#
130103026Ssobomax# NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT,
131103026Ssobomax# CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs.
132103026Ssobomax# These options may crash your system.
133103026Ssobomax#
134103026Ssobomax# NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled
135103026Ssobomax# in write-through mode when revision < 2.7.  If revision of Cyrix
136123338Sbms# 6x86 >= 2.7, CPU cache is always enabled in write-back mode.
137103026Ssobomax#
138103026Ssobomax# NOTE 3: This option may cause failures for software that requires
139103026Ssobomax# locked cycles in order to operate correctly.
140103026Ssobomax#
141103026Ssobomaxoptions 	CPU_BLUELIGHTNING_3X
142103026Ssobomaxoptions 	CPU_BLUELIGHTNING_FPU_OP_CACHE
143103026Ssobomaxoptions 	CPU_BTB_EN
144103026Ssobomaxoptions 	CPU_DIRECT_MAPPED_CACHE
145103026Ssobomaxoptions 	CPU_DISABLE_5X86_LSSER
146103026Ssobomaxoptions 	CPU_DISABLE_CMPXCHG
147103026Ssobomax#options 	CPU_DISABLE_SSE
148103026Ssobomaxoptions 	CPU_FASTER_5X86_FPU
149103026Ssobomaxoptions 	CPU_I486_ON_386
150103026Ssobomaxoptions 	CPU_IORT
151103026Ssobomaxoptions 	CPU_L2_LATENCY=5
152103026Ssobomaxoptions 	CPU_LOOP_EN
153103026Ssobomaxoptions 	CPU_PPRO2CELERON
154103032Ssobomaxoptions 	CPU_RSTK_EN
155103026Ssobomaxoptions 	CPU_SUSP_HLT
156103026Ssobomaxoptions 	CPU_UPGRADE_HW_CACHE
157103026Ssobomaxoptions 	CPU_WT_ALLOC
158127307Srwatsonoptions 	CYRIX_CACHE_WORKS
159103026Ssobomaxoptions 	CYRIX_CACHE_REALLY_WORKS
160103026Ssobomax#options 	NO_F00F_HACK
161103026Ssobomax
162103026Ssobomax# Debug options
163103032Ssobomaxoptions 	NPX_DEBUG	# enable npx debugging
164103026Ssobomax
165103026Ssobomax#
166103026Ssobomax# PERFMON causes the driver for Pentium/Pentium Pro performance counters
167103026Ssobomax# to be compiled.  See perfmon(4) for more information.
168103026Ssobomax#
169103026Ssobomaxoptions 	PERFMON
170131673Sbms
171103026Ssobomax
172121816Sbrooks#####################################################################
173103026Ssobomax# NETWORKING OPTIONS
174103026Ssobomax
175123338Sbms#
176103026Ssobomax# DEVICE_POLLING adds support for mixed interrupt-polling handling
177103026Ssobomax# of network device drivers, which has significant benefits in terms
178103026Ssobomax# of robustness to overloads and responsivity, as well as permitting
179103026Ssobomax# accurate scheduling of the CPU time between kernel network processing
180103026Ssobomax# and other activities.  The drawback is a moderate (up to 1/HZ seconds)
181103026Ssobomax# potential increase in response times.
182103026Ssobomax# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING
183103026Ssobomax# to achieve smoother behaviour.
184103026Ssobomax# Additionally, you can enable/disable polling at runtime with help of
185103026Ssobomax# the ifconfig(8) utility, and select the CPU fraction reserved to
186103026Ssobomax# userland with the sysctl variable kern.polling.user_frac
187125024Ssobomax# (default 50, range 0..100).
188103026Ssobomax#
189103026Ssobomax# Not all device drivers support this mode of operation at the time of
190127307Srwatson# this writing.  See polling(4) for more details.
191103026Ssobomax
192127307Srwatsonoptions 	DEVICE_POLLING
193103026Ssobomax
194103026Ssobomax# BPF_JITTER adds support for BPF just-in-time compiler.
195103026Ssobomax
196103032Ssobomaxoptions		BPF_JITTER
197127307Srwatson
198103026Ssobomax
199103026Ssobomax#####################################################################
200103026Ssobomax# MISCELLANEOUS DEVICES AND OPTIONS
201103026Ssobomax
202103026Ssobomax# 
203103026Ssobomax# sio: serial ports (see sio(4)), including support for various
204127307Srwatson#      PC Card devices, such as Modem and NICs
205127307Srwatson#
206103026Ssobomax#device		sio
207103026Ssobomaxhint.sio.0.at="isa"
208103026Ssobomaxhint.sio.0.port="0x3F8"
209127307Srwatsonhint.sio.0.flags="0x10"
210127307Srwatsonhint.sio.0.irq="4"
211127307Srwatson
212127307Srwatson# `flags' specific to sio(4).
213127307Srwatson#	0x10	enable console support for this unit.  Other console flags
214127307Srwatson#		(if applicable) are ignored unless this is set.  Enabling
215127307Srwatson#		console support does not make the unit the preferred console.
216127307Srwatson#		Boot with -h or set boot_serial=YES in the loader.  For sio(4)
217127307Srwatson#		specifically, the 0x20 flag can also be set (see above).
218127307Srwatson#		Currently, at most one unit can have console support; the
219127307Srwatson#		first one (in config file order) with this flag set is
220127307Srwatson#		preferred.  Setting this flag for sio0 gives the old behaviour.
221103026Ssobomax#	0x20	force this unit to be the console (unless there is another
222103026Ssobomax#		higher priority console).  This replaces the COMCONSOLE option.
223103026Ssobomax#	0x40	reserve this unit for low level console operations.  Do not
224103026Ssobomax#		access the device in any normal way.
225103032Ssobomax#	0x80	use this port for serial line gdb support in ddb.  Also known
226103026Ssobomax#		as debug port.
227103026Ssobomax# PnP `flags'
228103026Ssobomax#	0x1	disable probing of this device.  Used to prevent your modem
229103026Ssobomax#		from being attached as a PnP modem.
230103026Ssobomax# Other flags for sio that aren't documented in the man page.
231103026Ssobomax#	0x20000	enable hardware RTS/CTS and larger FIFOs.  Only works for
232103026Ssobomax#		ST16650A-compatible UARTs.
233123992Ssobomax
234103026Ssobomax# Options for sio:
235103026Ssobomaxoptions 	COM_ESP			# Code for Hayes ESP.
236103026Ssobomaxoptions 	COM_MULTIPORT		# Code for some cards with shared IRQs.
237103026Ssobomaxoptions 	CONSPEED=115200		# Speed for serial console
238103026Ssobomax					# (default 9600).
239103026Ssobomax
240103026Ssobomaxdevice		speaker		#Play IBM BASIC-style noises out your speaker
241103026Ssobomaxhint.speaker.0.at="isa"
242103026Ssobomaxhint.speaker.0.port="0x35"
243103026Ssobomaxdevice		gzip		#Exec gzipped a.out's.  REQUIRES COMPAT_AOUT!
244103026Ssobomaxdevice		apm_saver	# Requires APM
245103026Ssobomax
246103026Ssobomax
247103026Ssobomax#####################################################################
248103026Ssobomax# HARDWARE BUS CONFIGURATION
249103026Ssobomax
250103026Ssobomax#
251103026Ssobomax# ISA bus
252103026Ssobomax#
253103026Ssobomaxdevice		isa
254103026Ssobomax
255103026Ssobomax#
256103026Ssobomax# Options for `isa':
257103026Ssobomax#
258103026Ssobomax# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
259103026Ssobomax# interrupt controller.  This saves about 0.7-1.25 usec for each interrupt.
260123922Ssam# This option breaks suspend/resume on some portables.
261103026Ssobomax#
262103026Ssobomax# MAXMEM specifies the amount of RAM on the machine; if this is not
263103026Ssobomax# specified, FreeBSD will first read the amount of memory from the CMOS
264103026Ssobomax# RAM, so the amount of memory will initially be limited to 64MB or 16MB
265103026Ssobomax# depending on the BIOS.  If the BIOS reports 64MB, a memory probe will
266103026Ssobomax# then attempt to detect the installed amount of RAM.  If this probe
267103026Ssobomax# fails to detect >64MB RAM you will have to use the MAXMEM option.
268103026Ssobomax# The amount is in kilobytes, so for a machine with 128MB of RAM, it would
269103026Ssobomax# be 131072 (128 * 1024).
270103026Ssobomax#
271103026Ssobomax# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
272103026Ssobomax# reset the CPU for reboot.  This is needed on some systems with broken
273103026Ssobomax# keyboard controllers.
274103026Ssobomax
275103026Ssobomaxoptions 	AUTO_EOI_1
276103026Ssobomax
277103026Ssobomaxoptions 	MAXMEM=(128*1024)
278103026Ssobomax#options 	BROKEN_KEYBOARD_RESET
279103026Ssobomaxoptions 	EPSON_BOUNCEDMA
280103026Ssobomaxoptions 	EPSON_MEMWIN
281103026Ssobomax
282103026Ssobomax#
283103026Ssobomax# PCI bus & PCI options:
284103026Ssobomax#
285103026Ssobomaxdevice		pci
286103026Ssobomax
287103026Ssobomax#
288103026Ssobomax# AGP GART support
289103026Ssobomaxdevice		agp
290103026Ssobomax
291103026Ssobomax
292103026Ssobomax#####################################################################
293103026Ssobomax# HARDWARE DEVICE CONFIGURATION
294103026Ssobomax
295103026Ssobomax# PC98 keyboard
296103026Ssobomaxdevice		pckbd
297103026Ssobomaxhint.pckbd.0.at="isa"
298103026Ssobomaxhint.pckbd.0.port="0x041"
299103026Ssobomaxhint.pckbd.0.irq="1"
300103026Ssobomax
301123992Ssobomax# GDC screen
302103026Ssobomaxdevice		gdc
303103026Ssobomaxhint.gdc.0.at="isa"
304103026Ssobomaxoptions 	LINE30
305111119Simp
306103026Ssobomax#
307103026Ssobomax# The Numeric Processing eXtension driver.  This is non-optional.
308103026Ssobomaxdevice		npx
309103026Ssobomax
310103026Ssobomax#
311103026Ssobomax# `flags' for npx0:
312103026Ssobomax#	0x01	don't use the npx registers to optimize bcopy.
313103026Ssobomax#	0x02	don't use the npx registers to optimize bzero.
314103026Ssobomax#	0x04	don't use the npx registers to optimize copyin or copyout.
315103026Ssobomax# The npx registers are normally used to optimize copying and zeroing when
316103026Ssobomax# all of the following conditions are satisfied:
317103026Ssobomax#	I586_CPU is an option
318103026Ssobomax#	the cpu is an i586 (perhaps not a Pentium)
319103026Ssobomax#	the probe for npx0 succeeds
320103026Ssobomax#	INT 16 exception handling works.
321103026Ssobomax# Then copying and zeroing using the npx registers is normally 30-100% faster.
322103026Ssobomax# The flags can be used to control cases where it doesn't work or is slower.
323103026Ssobomax# Setting them at boot time using hints works right (the optimizations
324103026Ssobomax# are not used until later in the bootstrap when npx0 is attached).
325103026Ssobomax# Flag 0x08 automatically disables the i586 optimized routines.
326103026Ssobomax#
327103026Ssobomax
328103026Ssobomax#
329103026Ssobomax# Optional devices:
330103026Ssobomax#
331103026Ssobomax
332103026Ssobomax# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support.  This will create
333103026Ssobomax# the /dev/3dfx0 device to work with glide implementations.  This should get
334103026Ssobomax# linked to /dev/3dfx and /dev/voodoo.  Note that this is not the same as
335103026Ssobomax# the tdfx DRI module from XFree86 and is completely unrelated.
336103026Ssobomax#
337103026Ssobomax# To enable Linuxulator support, one must also include COMPAT_LINUX in the
338103026Ssobomax# config as well.  The other option is to load both as modules.
339103026Ssobomax
340103026Ssobomaxdevice		tdfx			# Enable 3Dfx Voodoo support
341103026Ssobomaxdevice		tdfx_linux		# Enable Linuxulator support
342103026Ssobomax
343103026Ssobomax# Direct Rendering modules for 3D acceleration.
344103026Ssobomaxdevice		drm		# DRM core module required by DRM drivers
345103026Ssobomaxdevice		mach64drm	# ATI Rage Pro, Rage Mobility P/M, Rage XL
346103026Ssobomaxdevice		mgadrm		# AGP Matrox G200, G400, G450, G550
347103026Ssobomaxdevice		r128drm		# ATI Rage 128
348103026Ssobomaxdevice		radeondrm	# ATI Radeon
349103026Ssobomaxdevice		savagedrm	# S3 Savage3D, Savage4
350103026Ssobomaxdevice		sisdrm		# SiS 300/305, 540, 630
351103026Ssobomaxdevice		tdfxdrm		# 3dfx Voodoo 3/4/5 and Banshee
352103026Ssobomaxoptions 	DRM_DEBUG	# Include debug printfs (slow)
353103026Ssobomax
354111119Simp#
355103026Ssobomax# Bus mouse
356103026Ssobomax#
357103026Ssobomaxdevice		mse
358103026Ssobomaxhint.mse.0.at="isa"
359103026Ssobomaxhint.mse.0.port="0x7fd9"
360103026Ssobomaxhint.mse.0.irq="13"
361103026Ssobomax
362128580Sandre#
363103026Ssobomax# Network interfaces:
364103026Ssobomax#
365103026Ssobomax
366103026Ssobomax# ar:   Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
367103026Ssobomax#       (requires sppp)
368103026Ssobomax# ath:  Atheros a/b/g WiFi adapters (requires ath_hal and wlan)
369103026Ssobomax# ce:   Cronyx Tau-PCI/32 sync single/dual port G.703/E1 serial adaptor
370103026Ssobomax#       with 32 HDLC subchannels (requires sppp (default), or NETGRAPH if
371125226Ssobomax#       NETGRAPH_CRONYX is configured)
372103026Ssobomax# cp:   Cronyx Tau-PCI sync single/dual/four port
373103026Ssobomax#       V.35/RS-232/RS-530/RS-449/X.21/G.703/E1/E3/T3/STS-1
374103026Ssobomax#       serial adaptor (requires sppp (default), or NETGRAPH if
375103026Ssobomax#       NETGRAPH_CRONYX is configured)
376103026Ssobomax# cs:   IBM Etherjet and other Crystal Semi CS89x0-based adapters and pccard
377103026Ssobomax# ed:   Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
378103026Ssobomax#       HP PC Lan+, various PC Card devices
379133163Ssobomax#       (requires miibus)
380103026Ssobomax# ie:   AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
381103032Ssobomax#       Intel EtherExpress
382103026Ssobomax# ral:	Ralink Technology IEEE 802.11 wireless adapter
383103026Ssobomax# sbni: Granch SBNI12-xx ISA and PCI adapters
384125226Ssobomax# sr:   RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
385103026Ssobomax# ural:	Ralink Technology RT2500USB IEEE 802.11 wireless adapter
386103026Ssobomax
387103026Ssobomax# Order for ISA/EISA devices is important here
388103026Ssobomax
389128583Sandredevice		ar
390128583Sandredevice		ce
391128583Sandredevice		cp
392128583Sandredevice		cs
393128583Sandredevice		ed
394128580Sandrehint.ed.0.at="isa"
395123992Ssobomaxhint.ed.0.port="0x280"
396103026Ssobomaxhint.ed.0.irq="5"
397103026Ssobomaxhint.ed.0.maddr="0xd8000"
398103026Ssobomaxdevice		ie			# Hints only required for Starlan
399103026Ssobomaxhint.ie.2.at="isa"
400103026Ssobomaxhint.ie.2.port="0x300"
401103026Ssobomaxhint.ie.2.irq="5"
402103026Ssobomaxhint.ie.2.maddr="0xd0000"
403103032Ssobomax# Hint for the PC98-only C-NET(98)S C-bus front-end of le(4).
404103026Ssobomaxhint.le.0.at="isa"
405103026Ssobomaxhint.le.0.port="0x03d0"
406103026Ssobomaxhint.le.0.irq="6"
407103026Ssobomaxdevice		ral
408103026Ssobomaxdevice		sbni
409103026Ssobomaxhint.sbni.0.at="isa"
410103026Ssobomaxhint.sbni.0.port="0x210"
411103026Ssobomaxhint.sbni.0.irq="0xefdead"
412103026Ssobomaxhint.sbni.0.flags="0"
413103026Ssobomaxdevice		snc
414103026Ssobomaxhint.snc.0.at="isa"
415103026Ssobomaxhint.snc.0.port="0x888"
416103026Ssobomaxhint.snc.0.irq="6"
417103026Ssobomaxhint.snc.0.maddr="0xc0000"
418103026Ssobomaxdevice		sr
419103026Ssobomaxdevice		ural
420103026Ssobomax
421103026Ssobomaxdevice		ath
422103026Ssobomaxdevice		ath_hal		# Atheros HAL (includes binary component)
423125020Ssobomax#device		ath_rate_amrr	# AMRR rate control for ath driver
424103026Ssobomax#device		ath_rate_onoe	# Onoe rate control for ath driver
425103026Ssobomaxdevice		ath_rate_sample	# SampleRate rate control for the ath driver
426103026Ssobomax#device		wlan		# 802.11 layer
427103026Ssobomax
428103026Ssobomax#
429103026Ssobomax# SCSI host adapters:
430103026Ssobomax#
431103026Ssobomax# ct: WD33C93[ABC] based SCSI host adapters.
432125024Ssobomax# ncv: NCR 53C500 based SCSI host adapters.
433125024Ssobomax# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
434125024Ssobomax# stg: TMC 18C30, 18C50 based SCSI host adapters.
435125024Ssobomax
436103026Ssobomaxdevice		ct
437103026Ssobomaxhint.ct.0.at="isa"
438103026Ssobomaxdevice		ncv
439103026Ssobomaxdevice		nsp
440103026Ssobomaxdevice		stg
441103026Ssobomax
442103026Ssobomax#
443103026Ssobomax# SafeNet crypto driver: can be moved to the MI NOTES as soon as
444103026Ssobomax# it's tested on a big-endian machine
445103026Ssobomax#
446103026Ssobomaxdevice		safe		# SafeNet 1141
447103026Ssobomaxoptions 	SAFE_DEBUG	# enable debugging support: hw.safe.debug
448103026Ssobomaxoptions 	SAFE_RNDTEST	# enable rndtest support
449103026Ssobomax
450103026Ssobomax#####################################################################
451103026Ssobomax
452103026Ssobomax#
453103026Ssobomax# Miscellaneous hardware:
454103026Ssobomax#
455103026Ssobomax# apm: Laptop Advanced Power Management (experimental)
456103026Ssobomax# pmtimer: Timer device driver for power management events (APM or ACPI)
457103026Ssobomax
458103026Ssobomax# Notes on APM
459103026Ssobomax#  The flags takes the following meaning for apm0:
460103026Ssobomax#    0x0020  Statclock is broken.
461103026Ssobomax
462103026Ssobomaxdevice		apm
463103026Ssobomaxhint.apm.0.flags="0x20"
464103026Ssobomaxdevice		canbus
465103026Ssobomaxdevice		canbepm
466103026Ssobomaxdevice		olpt
467103026Ssobomaxhint.olpt.0.at="isa"
468103026Ssobomaxhint.olpt.0.port="0x040"
469103026Ssobomaxdevice		pmc
470103026Ssobomaxhint.pmc.0.at="isa"
471103026Ssobomaxhint.pmc.0.port="0x8f0"
472103026Ssobomaxdevice		pmtimer			# Adjust system timer at wakeup time
473103026Ssobomax
474103026Ssobomax#
475103026Ssobomax# Laptop/Notebook options:
476103026Ssobomax#
477103026Ssobomax# See also:
478103026Ssobomax#  apm under `Miscellaneous hardware'
479103026Ssobomax# above.
480103026Ssobomax
481103026Ssobomax# For older notebooks that signal a powerfail condition (external
482103026Ssobomax# power supply dropped, or battery state low) by issuing an NMI:
483103026Ssobomax
484103026Ssobomaxoptions 	POWERFAIL_NMI	# make it beep instead of panicing
485103026Ssobomax
486103026Ssobomax#
487103026Ssobomax# Set the number of PV entries per process.  Increasing this can
488103026Ssobomax# stop panics related to heavy use of shared memory.  However, that can
489103026Ssobomax# (combined with large amounts of physical memory) cause panics at
490103026Ssobomax# boot time due the kernel running out of VM space.
491103026Ssobomax#
492103026Ssobomax# If you're tweaking this, you might also want to increase the sysctls
493103026Ssobomax# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
494103026Ssobomax#
495103026Ssobomax# The value below is the one more than the default.
496103026Ssobomax#
497103026Ssobomaxoptions 	PMAP_SHPGPERPROC=201
498103026Ssobomax
499103026Ssobomax#
500103026Ssobomax# Change the size of the kernel virtual address space.  Due to
501103026Ssobomax# constraints in loader(8) on i386, this must be a multiple of 4.
502103026Ssobomax# 256 = 1 GB of kernel address space.  Increasing this also causes
503103026Ssobomax# a reduction of the address space in user processes.  512 splits
504103026Ssobomax# the 4GB cpu address space in half (2GB user, 2GB kernel).
505103026Ssobomax#
506103026Ssobomaxoptions 	KVA_PAGES=260
507103026Ssobomax
508103026Ssobomax
509103026Ssobomax#####################################################################
510103026Ssobomax# ABI Emulation
511103026Ssobomax
512103026Ssobomax# Enable iBCS2 runtime support for SCO and ISC binaries
513103026Ssobomaxoptions 	IBCS2
514103026Ssobomax
515103026Ssobomax# Emulate spx device for client side of SVR3 local X interface
516103026Ssobomaxoptions 	SPX_HACK
517103026Ssobomax
518125020Ssobomax# Enable Linux ABI emulation
519103026Ssobomaxoptions 	COMPAT_LINUX
520103026Ssobomax
521103026Ssobomax# Enable i386 a.out binary support
522103026Ssobomaxoptions 	COMPAT_AOUT
523103026Ssobomax
524103026Ssobomax# Enable the linux-like proc filesystem support (requires COMPAT_LINUX
525103026Ssobomax# and PSEUDOFS)
526103026Ssobomaxoptions 	LINPROCFS
527103026Ssobomax
528103026Ssobomax# Enable the linux-like sys filesystem support (requires COMPAT_LINUX
529103026Ssobomax# and PSEUDOFS)
530103026Ssobomaxoptions 	LINSYSFS
531103026Ssobomax
532103026Ssobomax#
533103026Ssobomax# SysVR4 ABI emulation
534103026Ssobomax#
535103026Ssobomax# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
536103026Ssobomax# a KLD module.
537103026Ssobomax# The STREAMS network emulation code can also be compiled statically or as a
538103026Ssobomax# module.  If loaded as a module, it must be loaded before the svr4 module
539103026Ssobomax# (the /usr/sbin/svr4 script does this for you).  If compiling statically,
540103026Ssobomax# the `streams' device must be configured into any kernel which also
541103026Ssobomax# specifies COMPAT_SVR4.  It is possible to have a statically-configured
542103026Ssobomax# STREAMS device and a dynamically loadable svr4 emulator;  the /usr/sbin/svr4
543103026Ssobomax# script understands that it doesn't need to load the `streams' module under
544103026Ssobomax# those circumstances.
545103026Ssobomax# Caveat:  At this time, `options KTRACE' is required for the svr4 emulator
546103026Ssobomax# (whether static or dynamic).
547103026Ssobomax#
548103026Ssobomaxoptions 	COMPAT_SVR4	# build emulator statically
549103026Ssobomaxoptions 	DEBUG_SVR4	# enable verbose debugging
550103026Ssobomaxdevice		streams		# STREAMS network driver (required for svr4).
551103026Ssobomax
552103026Ssobomax
553103026Ssobomax#####################################################################
554103026Ssobomax# VM OPTIONS
555103026Ssobomax
556103026Ssobomax# Disable the 4 MByte page PSE CPU feature.  The PSE feature allows the
557103026Ssobomax# kernel to use 4 MByte pages to map the kernel instead of 4k pages.
558103026Ssobomax# This saves on the amount of memory needed for page tables needed to
559103026Ssobomax# map the kernel.  You should only disable this feature as a temporary
560103026Ssobomax# workaround if you are having problems with it enabled.
561103026Ssobomax#
562103026Ssobomax#options 	DISABLE_PSE
563103026Ssobomax
564103026Ssobomax# Disable the global pages PGE CPU feature.  The PGE feature allows pages
565103026Ssobomax# to be marked with the PG_G bit.  TLB entries for these pages are not
566103026Ssobomax# flushed from the cache when %cr3 is reloaded.  This can make context
567103026Ssobomax# switches less expensive.  You should only disable this feature as a
568103026Ssobomax# temporary workaround if you are having problems with it enabled.
569103026Ssobomax#
570103026Ssobomax#options 	DISABLE_PG_G
571103026Ssobomax
572103026Ssobomax# KSTACK_PAGES is the number of memory pages to assign to the kernel
573103026Ssobomax# stack of each thread.
574103026Ssobomax
575103026Ssobomaxoptions 	KSTACK_PAGES=3
576103026Ssobomax
577103026Ssobomax#####################################################################
578103026Ssobomax
579103026Ssobomax# More undocumented options for linting.
580103026Ssobomax# Note that documenting these are not considered an affront.
581103026Ssobomax
582103026Ssobomaxoptions 	FB_INSTALL_CDEV		# install a CDEV entry in /dev
583103026Ssobomax
584103026Ssobomaxoptions 	I586_PMC_GUPROF=0x70000
585103026Ssobomaxoptions 	KBDIO_DEBUG=2
586103026Ssobomaxoptions 	KBD_MAXRETRY=4
587103026Ssobomaxoptions 	KBD_MAXWAIT=6
588103026Ssobomaxoptions 	KBD_RESETDELAY=201
589103026Ssobomax
590103026Ssobomaxoptions 	TIMER_FREQ=((14318182+6)/12)
591103026Ssobomax
592103026Ssobomaxoptions 	VM_KMEM_SIZE
593103026Ssobomaxoptions 	VM_KMEM_SIZE_MAX
594103026Ssobomaxoptions 	VM_KMEM_SIZE_SCALE
595103026Ssobomax
596103026Ssobomax
597103026Ssobomax#####################################################################
598103026Ssobomax# Devices we don't want to deal with
599103026Ssobomax
600103026Ssobomaxnodevice	bt
601103026Ssobomaxnodevice	adw
602103026Ssobomaxnodevice	aha
603103026Ssobomaxnodevice	ahb
604103026Ssobomaxnodevice	ahd
605103026Ssobomaxnodevice	mpt
606103026Ssobomaxnodevice	trm
607122699Sbmsnodevice	wds
608122699Sbmsnodevice	dpt
609122699Sbmsnodevice	ciss
610103026Ssobomaxnodevice	iir
611103026Ssobomaxnodevice	mly
612103026Ssobomaxnodevice	ida		# Compaq Smart RAID
613103026Ssobomaxnodevice	mlx		# Mylex DAC960
614103026Ssobomaxnodevice	amr		# AMI MegaRAID
615103026Ssobomaxnodevice	twe		# 3ware ATA RAID
616103026Ssobomaxnodevice	ataraid
617103026Ssobomaxnodevice	cm
618103026Ssobomaxnodevice	ex
619103026Ssobomaxnodevice	fea
620103026Ssobomaxnodevice	intpm
621122699Sbmsnodevice	alpm
622122699Sbmsnodevice	ichsmb
623122699Sbmsnodevice	viapm
624103026Ssobomaxnodevice	amdpm
625103026Ssobomaxnodevice	amdsmb
626103026Ssobomaxnodevice	nfpm
627103026Ssobomaxnodevice	nfsmb
628103026Ssobomax
629103026Ssobomax
630103026Ssobomax#####################################################################
631103026Ssobomax# Options we don't want to deal with
632103026Ssobomax
633103026Ssobomaxnooption	AHD_DEBUG
634103026Ssobomaxnooption	AHD_DEBUG_OPTS
635103026Ssobomaxnooption	AHD_REG_PRETTY_PRINT
636103026Ssobomaxnooption	ADW_ALLOW_MEMIO
637103026Ssobomaxnooption	DPT_LOST_IRQ
638103026Ssobomaxnooption	DPT_RESET_HBA
639103026Ssobomaxnooption	DPT_TIMEOUT_FACTOR
640103026Ssobomaxnooption	AAC_DEBUG
641103026Ssobomax
642103026Ssobomax
643103026Ssobomax#####################################################################
644103026Ssobomax# Make options we don't want to deal with
645103026Ssobomax