Deleted Added
full compact
NOTES (152952) NOTES (153581)
1#
2# NOTES -- Lines that can be cut/pasted into kernel and hints configs.
3#
4# This file contains machine dependent kernel configuration notes. For
5# machine independent notes, look in /sys/conf/NOTES.
6#
1#
2# NOTES -- Lines that can be cut/pasted into kernel and hints configs.
3#
4# This file contains machine dependent kernel configuration notes. For
5# machine independent notes, look in /sys/conf/NOTES.
6#
7# $FreeBSD: head/sys/pc98/conf/NOTES 152952 2005-11-30 11:58:01Z nyan $
7# $FreeBSD: head/sys/pc98/conf/NOTES 153581 2005-12-20 23:00:11Z imp $
8#
9
10options PC98
11
12#
13# We want LINT to cover profiling as well.
14profile 2
15
16
17#####################################################################
18# SMP OPTIONS:
19#
20# The apic device enables the use of the I/O APIC for interrupt delivery.
21# The apic device can be used in both UP and SMP kernels, but is required
22# for SMP kernels. Thus, the apic device is not strictly an SMP option,
23# but it is a prerequisite for SMP.
24#
25
26# Mandatory:
27device apic # I/O apic
28
29#
30# Watchdog routines.
31#
32options MP_WATCHDOG
33
34# Debugging options.
35#
36options STOP_NMI # Stop CPUS using NMI instead of IPI
37
38
39
40#####################################################################
41# CPU OPTIONS
42
43#
44# You must specify at least one CPU (the one you intend to run on);
45# deleting the specification for CPUs you don't need to use may make
46# parts of the system run faster.
47#
48cpu I486_CPU
49cpu I586_CPU # aka Pentium(tm)
50cpu I686_CPU # aka Pentium Pro(tm)
51
52#
53# Options for CPU features.
54#
55# CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning
56# CPU if CPU supports it. The default is double-clock mode on
57# BlueLightning CPU box.
58#
59# CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM
60# BlueLightning CPU. It works only with Cyrix FPU, and this option
61# should not be used with Intel FPU.
62#
63# CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1).
64#
65# CPU_CYRIX_NO_LOCK enables weak locking for the entire address space
66# of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1.
67# Otherwise, the NO_LOCK bit of CCR1 is cleared. (NOTE 3)
68#
69# CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct
70# mapped mode. Default is 2-way set associative mode.
71#
72# CPU_DISABLE_5X86_LSSER disables load store serialize (i.e., enables
73# reorder). This option should not be used if you use memory mapped
74# I/O device(s).
75#
76# CPU_DISABLE_CMPXCHG disables the CMPXCHG instruction on > i386 IA32
77# machines. VmWare 3.x seems to emulate this instruction poorly, causing
78# the guest OS to run very slowly. This problem appears to be fixed in
79# VmWare 4.x, at least in version 4.5.2, so that enabling this option with
80# VmWare 4.x will result in locking operations to be 20-30 times slower.
81# Enabling this with an SMP kernel will cause the kernel to be unusable.
82#
83# CPU_DISABLE_SSE explicitly prevents I686_CPU from turning on SSE.
84#
85# CPU_FASTER_5X86_FPU enables faster FPU exception handler.
86#
87# CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products
88# for i386 machines.
89#
90# CPU_IORT defines I/O clock delay time (NOTE 1). Default values of
91# I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively
92# (no clock delay).
93#
94# CPU_L2_LATENCY specifies the L2 cache latency value. This option is used
95# only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected.
96# The default value is 5.
97#
98# CPU_LOOP_EN prevents flushing the prefetch buffer if the destination
99# of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE
100# 1).
101#
102# CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs. This option
103# is useful when you use Socket 8 to Socket 370 converter, because most Pentium
104# Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs.
105#
106# CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1).
107#
108# CPU_SUSP_HLT enables suspend on HALT. If this option is set, CPU
109# enters suspend mode following execution of HALT instruction.
110#
111# CPU_UPGRADE_HW_CACHE eliminates unneeded cache flush instruction(s).
112#
113# CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD
114# K5/K6/K6-2 CPUs.
115#
116# CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache
117# flush at hold state.
118#
119# CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs
120# without cache flush at hold state, and (2) write-back CPU cache on
121# Cyrix 6x86 whose revision < 2.7 (NOTE 2).
122#
123# NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY
124# Pentiums) from locking up when a LOCK CMPXCHG8B instruction is
125# executed. This option is only needed if I586_CPU is also defined,
126# and should be included for any non-Pentium CPU that defines it.
127#
128# NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors
129# which indicates that the 15-16MB range is *definitely* not being
130# occupied by an ISA memory hole.
131#
132# NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT,
133# CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs.
134# These options may crash your system.
135#
136# NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled
137# in write-through mode when revision < 2.7. If revision of Cyrix
138# 6x86 >= 2.7, CPU cache is always enabled in write-back mode.
139#
140# NOTE 3: This option may cause failures for software that requires
141# locked cycles in order to operate correctly.
142#
143options CPU_BLUELIGHTNING_3X
144options CPU_BLUELIGHTNING_FPU_OP_CACHE
145options CPU_BTB_EN
146options CPU_DIRECT_MAPPED_CACHE
147options CPU_DISABLE_5X86_LSSER
148options CPU_DISABLE_CMPXCHG
149#options CPU_DISABLE_SSE
150options CPU_FASTER_5X86_FPU
151options CPU_I486_ON_386
152options CPU_IORT
153options CPU_L2_LATENCY=5
154options CPU_LOOP_EN
155options CPU_PPRO2CELERON
156options CPU_RSTK_EN
157options CPU_SUSP_HLT
158options CPU_UPGRADE_HW_CACHE
159options CPU_WT_ALLOC
160options CYRIX_CACHE_WORKS
161options CYRIX_CACHE_REALLY_WORKS
162#options NO_F00F_HACK
163
164# Debug options
165options NPX_DEBUG # enable npx debugging
166
167#
168# PERFMON causes the driver for Pentium/Pentium Pro performance counters
169# to be compiled. See perfmon(4) for more information.
170#
171options PERFMON
172
173
174#####################################################################
175# NETWORKING OPTIONS
176
177#
178# DEVICE_POLLING adds support for mixed interrupt-polling handling
179# of network device drivers, which has significant benefits in terms
180# of robustness to overloads and responsivity, as well as permitting
181# accurate scheduling of the CPU time between kernel network processing
182# and other activities. The drawback is a moderate (up to 1/HZ seconds)
183# potential increase in response times.
184# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING
185# to achieve smoother behaviour.
186# Additionally, you can enable/disable polling at runtime with help of
187# the ifconfig(8) utility, and select the CPU fraction reserved to
188# userland with the sysctl variable kern.polling.user_frac
189# (default 50, range 0..100).
190#
191# Not all device drivers support this mode of operation at the time of
192# this writing. See polling(4) for more details.
193
194options DEVICE_POLLING
195
196
197#####################################################################
198# CLOCK OPTIONS
199
200# The following options are used for debugging clock behavior only, and
201# should not be used for production systems.
202
203# CLK_CALIBRATION_LOOP causes clock calibration to be run in a loop at
204# startup until the user presses a key. (The i8254 clock is always
205# calibrated relative to the RTC (mc146818a) and this option causes the
206# calibration to be repeated.)
207options CLK_CALIBRATION_LOOP
208
209# CLK_USE_I8254_CALIBRATION causes the calibrated frequency of the i8254
210# clock to actually be used.
211options CLK_USE_I8254_CALIBRATION
212
213
214#####################################################################
215# MISCELLANEOUS DEVICES AND OPTIONS
216
217device speaker #Play IBM BASIC-style noises out your speaker
218hint.speaker.0.at="isa"
219hint.speaker.0.port="0x35"
220device gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT!
221device apm_saver # Requires APM
222
223
224#####################################################################
225# HARDWARE BUS CONFIGURATION
226
227#
228# ISA bus
229#
230device isa
231
232#
233# Options for `isa':
234#
235# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
236# interrupt controller. This saves about 0.7-1.25 usec for each interrupt.
237# This option breaks suspend/resume on some portables.
238#
239# MAXMEM specifies the amount of RAM on the machine; if this is not
240# specified, FreeBSD will first read the amount of memory from the CMOS
241# RAM, so the amount of memory will initially be limited to 64MB or 16MB
242# depending on the BIOS. If the BIOS reports 64MB, a memory probe will
243# then attempt to detect the installed amount of RAM. If this probe
244# fails to detect >64MB RAM you will have to use the MAXMEM option.
245# The amount is in kilobytes, so for a machine with 128MB of RAM, it would
246# be 131072 (128 * 1024).
247#
248# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
249# reset the CPU for reboot. This is needed on some systems with broken
250# keyboard controllers.
251
252options AUTO_EOI_1
253
254options MAXMEM=(128*1024)
255#options BROKEN_KEYBOARD_RESET
256options EPSON_BOUNCEDMA
257options EPSON_MEMWIN
258
259#
260# PCI bus & PCI options:
261#
262device pci
263
264#
265# AGP GART support
266device agp
267
268
269#####################################################################
270# HARDWARE DEVICE CONFIGURATION
271
272# PC98 keyboard
273device pckbd
274hint.pckbd.0.at="isa"
275hint.pckbd.0.port="0x041"
276hint.pckbd.0.irq="1"
277
278# These options are valid for other keyboard drivers as well.
279options KBD_DISABLE_KEYMAP_LOAD # refuse to load a keymap
280options KBD_INSTALL_CDEV # install a CDEV entry in /dev
281
282# GDC screen
283device gdc
284hint.gdc.0.at="isa"
285options LINE30
286
287#
288# The Numeric Processing eXtension driver. This is non-optional.
289device npx
290
291#
292# `flags' for npx0:
293# 0x01 don't use the npx registers to optimize bcopy.
294# 0x02 don't use the npx registers to optimize bzero.
295# 0x04 don't use the npx registers to optimize copyin or copyout.
296# The npx registers are normally used to optimize copying and zeroing when
297# all of the following conditions are satisfied:
298# I586_CPU is an option
299# the cpu is an i586 (perhaps not a Pentium)
300# the probe for npx0 succeeds
301# INT 16 exception handling works.
302# Then copying and zeroing using the npx registers is normally 30-100% faster.
303# The flags can be used to control cases where it doesn't work or is slower.
304# Setting them at boot time using hints works right (the optimizations
305# are not used until later in the bootstrap when npx0 is attached).
306# Flag 0x08 automatically disables the i586 optimized routines.
307#
308
309#
310# Optional devices:
311#
312
313# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create
314# the /dev/3dfx0 device to work with glide implementations. This should get
315# linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as
316# the tdfx DRI module from XFree86 and is completely unrelated.
317#
318# To enable Linuxulator support, one must also include COMPAT_LINUX in the
319# config as well, or you will not have the dependencies. The other option
320# is to load both as modules.
321
322device tdfx # Enable 3Dfx Voodoo support
323options TDFX_LINUX # Enable Linuxulator support
324
325# Direct Rendering modules for 3D acceleration.
326device drm # DRM core module required by DRM drivers
327device mach64drm # ATI Rage Pro, Rage Mobility P/M, Rage XL
328device mgadrm # AGP Matrox G200, G400, G450, G550
329device r128drm # ATI Rage 128
330device radeondrm # ATI Radeon
331device savagedrm # S3 Savage3D, Savage4
332device sisdrm # SiS 300/305, 540, 630
333device tdfxdrm # 3dfx Voodoo 3/4/5 and Banshee
334options DRM_DEBUG # Include debug printfs (slow)
335
336#
337# Bus mouse
338#
339device mse
340hint.mse.0.at="isa"
341hint.mse.0.port="0x7fd9"
342hint.mse.0.irq="13"
343
344#
345# Network interfaces:
346#
347
348# ar: Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
349# (requires sppp)
350# cp: Cronyx Tau-PCI sync single/dual/four port
351# V.35/RS-232/RS-530/RS-449/X.21/G.703/E1/E3/T3/STS-1
352# serial adaptor (requires sppp (default), or NETGRAPH if
353# NETGRAPH_CRONYX is configured)
8#
9
10options PC98
11
12#
13# We want LINT to cover profiling as well.
14profile 2
15
16
17#####################################################################
18# SMP OPTIONS:
19#
20# The apic device enables the use of the I/O APIC for interrupt delivery.
21# The apic device can be used in both UP and SMP kernels, but is required
22# for SMP kernels. Thus, the apic device is not strictly an SMP option,
23# but it is a prerequisite for SMP.
24#
25
26# Mandatory:
27device apic # I/O apic
28
29#
30# Watchdog routines.
31#
32options MP_WATCHDOG
33
34# Debugging options.
35#
36options STOP_NMI # Stop CPUS using NMI instead of IPI
37
38
39
40#####################################################################
41# CPU OPTIONS
42
43#
44# You must specify at least one CPU (the one you intend to run on);
45# deleting the specification for CPUs you don't need to use may make
46# parts of the system run faster.
47#
48cpu I486_CPU
49cpu I586_CPU # aka Pentium(tm)
50cpu I686_CPU # aka Pentium Pro(tm)
51
52#
53# Options for CPU features.
54#
55# CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning
56# CPU if CPU supports it. The default is double-clock mode on
57# BlueLightning CPU box.
58#
59# CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM
60# BlueLightning CPU. It works only with Cyrix FPU, and this option
61# should not be used with Intel FPU.
62#
63# CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1).
64#
65# CPU_CYRIX_NO_LOCK enables weak locking for the entire address space
66# of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1.
67# Otherwise, the NO_LOCK bit of CCR1 is cleared. (NOTE 3)
68#
69# CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct
70# mapped mode. Default is 2-way set associative mode.
71#
72# CPU_DISABLE_5X86_LSSER disables load store serialize (i.e., enables
73# reorder). This option should not be used if you use memory mapped
74# I/O device(s).
75#
76# CPU_DISABLE_CMPXCHG disables the CMPXCHG instruction on > i386 IA32
77# machines. VmWare 3.x seems to emulate this instruction poorly, causing
78# the guest OS to run very slowly. This problem appears to be fixed in
79# VmWare 4.x, at least in version 4.5.2, so that enabling this option with
80# VmWare 4.x will result in locking operations to be 20-30 times slower.
81# Enabling this with an SMP kernel will cause the kernel to be unusable.
82#
83# CPU_DISABLE_SSE explicitly prevents I686_CPU from turning on SSE.
84#
85# CPU_FASTER_5X86_FPU enables faster FPU exception handler.
86#
87# CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products
88# for i386 machines.
89#
90# CPU_IORT defines I/O clock delay time (NOTE 1). Default values of
91# I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively
92# (no clock delay).
93#
94# CPU_L2_LATENCY specifies the L2 cache latency value. This option is used
95# only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected.
96# The default value is 5.
97#
98# CPU_LOOP_EN prevents flushing the prefetch buffer if the destination
99# of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE
100# 1).
101#
102# CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs. This option
103# is useful when you use Socket 8 to Socket 370 converter, because most Pentium
104# Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs.
105#
106# CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1).
107#
108# CPU_SUSP_HLT enables suspend on HALT. If this option is set, CPU
109# enters suspend mode following execution of HALT instruction.
110#
111# CPU_UPGRADE_HW_CACHE eliminates unneeded cache flush instruction(s).
112#
113# CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD
114# K5/K6/K6-2 CPUs.
115#
116# CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache
117# flush at hold state.
118#
119# CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs
120# without cache flush at hold state, and (2) write-back CPU cache on
121# Cyrix 6x86 whose revision < 2.7 (NOTE 2).
122#
123# NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY
124# Pentiums) from locking up when a LOCK CMPXCHG8B instruction is
125# executed. This option is only needed if I586_CPU is also defined,
126# and should be included for any non-Pentium CPU that defines it.
127#
128# NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors
129# which indicates that the 15-16MB range is *definitely* not being
130# occupied by an ISA memory hole.
131#
132# NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT,
133# CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs.
134# These options may crash your system.
135#
136# NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled
137# in write-through mode when revision < 2.7. If revision of Cyrix
138# 6x86 >= 2.7, CPU cache is always enabled in write-back mode.
139#
140# NOTE 3: This option may cause failures for software that requires
141# locked cycles in order to operate correctly.
142#
143options CPU_BLUELIGHTNING_3X
144options CPU_BLUELIGHTNING_FPU_OP_CACHE
145options CPU_BTB_EN
146options CPU_DIRECT_MAPPED_CACHE
147options CPU_DISABLE_5X86_LSSER
148options CPU_DISABLE_CMPXCHG
149#options CPU_DISABLE_SSE
150options CPU_FASTER_5X86_FPU
151options CPU_I486_ON_386
152options CPU_IORT
153options CPU_L2_LATENCY=5
154options CPU_LOOP_EN
155options CPU_PPRO2CELERON
156options CPU_RSTK_EN
157options CPU_SUSP_HLT
158options CPU_UPGRADE_HW_CACHE
159options CPU_WT_ALLOC
160options CYRIX_CACHE_WORKS
161options CYRIX_CACHE_REALLY_WORKS
162#options NO_F00F_HACK
163
164# Debug options
165options NPX_DEBUG # enable npx debugging
166
167#
168# PERFMON causes the driver for Pentium/Pentium Pro performance counters
169# to be compiled. See perfmon(4) for more information.
170#
171options PERFMON
172
173
174#####################################################################
175# NETWORKING OPTIONS
176
177#
178# DEVICE_POLLING adds support for mixed interrupt-polling handling
179# of network device drivers, which has significant benefits in terms
180# of robustness to overloads and responsivity, as well as permitting
181# accurate scheduling of the CPU time between kernel network processing
182# and other activities. The drawback is a moderate (up to 1/HZ seconds)
183# potential increase in response times.
184# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING
185# to achieve smoother behaviour.
186# Additionally, you can enable/disable polling at runtime with help of
187# the ifconfig(8) utility, and select the CPU fraction reserved to
188# userland with the sysctl variable kern.polling.user_frac
189# (default 50, range 0..100).
190#
191# Not all device drivers support this mode of operation at the time of
192# this writing. See polling(4) for more details.
193
194options DEVICE_POLLING
195
196
197#####################################################################
198# CLOCK OPTIONS
199
200# The following options are used for debugging clock behavior only, and
201# should not be used for production systems.
202
203# CLK_CALIBRATION_LOOP causes clock calibration to be run in a loop at
204# startup until the user presses a key. (The i8254 clock is always
205# calibrated relative to the RTC (mc146818a) and this option causes the
206# calibration to be repeated.)
207options CLK_CALIBRATION_LOOP
208
209# CLK_USE_I8254_CALIBRATION causes the calibrated frequency of the i8254
210# clock to actually be used.
211options CLK_USE_I8254_CALIBRATION
212
213
214#####################################################################
215# MISCELLANEOUS DEVICES AND OPTIONS
216
217device speaker #Play IBM BASIC-style noises out your speaker
218hint.speaker.0.at="isa"
219hint.speaker.0.port="0x35"
220device gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT!
221device apm_saver # Requires APM
222
223
224#####################################################################
225# HARDWARE BUS CONFIGURATION
226
227#
228# ISA bus
229#
230device isa
231
232#
233# Options for `isa':
234#
235# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
236# interrupt controller. This saves about 0.7-1.25 usec for each interrupt.
237# This option breaks suspend/resume on some portables.
238#
239# MAXMEM specifies the amount of RAM on the machine; if this is not
240# specified, FreeBSD will first read the amount of memory from the CMOS
241# RAM, so the amount of memory will initially be limited to 64MB or 16MB
242# depending on the BIOS. If the BIOS reports 64MB, a memory probe will
243# then attempt to detect the installed amount of RAM. If this probe
244# fails to detect >64MB RAM you will have to use the MAXMEM option.
245# The amount is in kilobytes, so for a machine with 128MB of RAM, it would
246# be 131072 (128 * 1024).
247#
248# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
249# reset the CPU for reboot. This is needed on some systems with broken
250# keyboard controllers.
251
252options AUTO_EOI_1
253
254options MAXMEM=(128*1024)
255#options BROKEN_KEYBOARD_RESET
256options EPSON_BOUNCEDMA
257options EPSON_MEMWIN
258
259#
260# PCI bus & PCI options:
261#
262device pci
263
264#
265# AGP GART support
266device agp
267
268
269#####################################################################
270# HARDWARE DEVICE CONFIGURATION
271
272# PC98 keyboard
273device pckbd
274hint.pckbd.0.at="isa"
275hint.pckbd.0.port="0x041"
276hint.pckbd.0.irq="1"
277
278# These options are valid for other keyboard drivers as well.
279options KBD_DISABLE_KEYMAP_LOAD # refuse to load a keymap
280options KBD_INSTALL_CDEV # install a CDEV entry in /dev
281
282# GDC screen
283device gdc
284hint.gdc.0.at="isa"
285options LINE30
286
287#
288# The Numeric Processing eXtension driver. This is non-optional.
289device npx
290
291#
292# `flags' for npx0:
293# 0x01 don't use the npx registers to optimize bcopy.
294# 0x02 don't use the npx registers to optimize bzero.
295# 0x04 don't use the npx registers to optimize copyin or copyout.
296# The npx registers are normally used to optimize copying and zeroing when
297# all of the following conditions are satisfied:
298# I586_CPU is an option
299# the cpu is an i586 (perhaps not a Pentium)
300# the probe for npx0 succeeds
301# INT 16 exception handling works.
302# Then copying and zeroing using the npx registers is normally 30-100% faster.
303# The flags can be used to control cases where it doesn't work or is slower.
304# Setting them at boot time using hints works right (the optimizations
305# are not used until later in the bootstrap when npx0 is attached).
306# Flag 0x08 automatically disables the i586 optimized routines.
307#
308
309#
310# Optional devices:
311#
312
313# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create
314# the /dev/3dfx0 device to work with glide implementations. This should get
315# linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as
316# the tdfx DRI module from XFree86 and is completely unrelated.
317#
318# To enable Linuxulator support, one must also include COMPAT_LINUX in the
319# config as well, or you will not have the dependencies. The other option
320# is to load both as modules.
321
322device tdfx # Enable 3Dfx Voodoo support
323options TDFX_LINUX # Enable Linuxulator support
324
325# Direct Rendering modules for 3D acceleration.
326device drm # DRM core module required by DRM drivers
327device mach64drm # ATI Rage Pro, Rage Mobility P/M, Rage XL
328device mgadrm # AGP Matrox G200, G400, G450, G550
329device r128drm # ATI Rage 128
330device radeondrm # ATI Radeon
331device savagedrm # S3 Savage3D, Savage4
332device sisdrm # SiS 300/305, 540, 630
333device tdfxdrm # 3dfx Voodoo 3/4/5 and Banshee
334options DRM_DEBUG # Include debug printfs (slow)
335
336#
337# Bus mouse
338#
339device mse
340hint.mse.0.at="isa"
341hint.mse.0.port="0x7fd9"
342hint.mse.0.irq="13"
343
344#
345# Network interfaces:
346#
347
348# ar: Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
349# (requires sppp)
350# cp: Cronyx Tau-PCI sync single/dual/four port
351# V.35/RS-232/RS-530/RS-449/X.21/G.703/E1/E3/T3/STS-1
352# serial adaptor (requires sppp (default), or NETGRAPH if
353# NETGRAPH_CRONYX is configured)
354# cs: IBM Etherjet and other Crystal Semi CS89x0-based adapters and pccard
354# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
355# HP PC Lan+, various PC Card devices
356# (requires miibus)
357# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
358# Intel EtherExpress
359# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and
360# Am79C960)
361# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133.
362# Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140,
363# OC-3141, OC-3540 and OC-3250.
364# sbni: Granch SBNI12-xx ISA and PCI adapters
365# sr: RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
366
367# Order for ISA/EISA devices is important here
368
369device ar
370device cp
355# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
356# HP PC Lan+, various PC Card devices
357# (requires miibus)
358# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
359# Intel EtherExpress
360# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and
361# Am79C960)
362# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133.
363# Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140,
364# OC-3141, OC-3540 and OC-3250.
365# sbni: Granch SBNI12-xx ISA and PCI adapters
366# sr: RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
367
368# Order for ISA/EISA devices is important here
369
370device ar
371device cp
372device cs
371device ed
372hint.ed.0.at="isa"
373hint.ed.0.port="0x280"
374hint.ed.0.irq="5"
375hint.ed.0.maddr="0xd8000"
376device ie # Hints only required for Starlan
377hint.ie.2.at="isa"
378hint.ie.2.port="0x300"
379hint.ie.2.irq="5"
380hint.ie.2.maddr="0xd0000"
381device lnc
382hint.lnc.0.at="isa"
383hint.lnc.0.port="0x280"
384hint.lnc.0.irq="10"
385hint.lnc.0.drq="0"
386device sbni
387hint.sbni.0.at="isa"
388hint.sbni.0.port="0x210"
389hint.sbni.0.irq="0xefdead"
390hint.sbni.0.flags="0"
391device snc
392hint.snc.0.at="isa"
393hint.snc.0.port="0x888"
394hint.snc.0.irq="6"
395hint.snc.0.maddr="0xc0000"
396device sr
397device oltr
398
399#
400# SCSI host adapters:
401#
402# ct: WD33C93[ABC] based SCSI host adapters.
403# ncv: NCR 53C500 based SCSI host adapters.
404# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
405# stg: TMC 18C30, 18C50 based SCSI host adapters.
406
407device ct
408hint.ct.0.at="isa"
409device ncv
410device nsp
411device stg
412
413#
414# SafeNet crypto driver: can be moved to the MI NOTES as soon as
415# it's tested on a big-endian machine
416#
417device safe # SafeNet 1141
418options SAFE_DEBUG # enable debugging support: hw.safe.debug
419options SAFE_RNDTEST # enable rndtest support
420
421#####################################################################
422
423#
424# Miscellaneous hardware:
425#
426# apm: Laptop Advanced Power Management (experimental)
427# pmtimer: Timer device driver for power management events (APM or ACPI)
428# cy: Cyclades serial driver
429# digi: Digiboard driver
430
431# Notes on APM
432# The flags takes the following meaning for apm0:
433# 0x0020 Statclock is broken.
434
435device apm
436hint.apm.0.flags="0x20"
437device canbus
438device canbepm
439device cy
440options CY_PCI_FASTINTR # Use with cy_pci unless irq is shared
441device digi
442# BIOS & FEP/OS components of device digi.
443device digi_CX
444device digi_CX_PCI
445device digi_EPCX
446device digi_EPCX_PCI
447device digi_Xe
448device digi_Xem
449device digi_Xr
450device olpt
451hint.olpt.0.at="isa"
452hint.olpt.0.port="0x040"
453device pmc
454hint.pmc.0.at="isa"
455hint.pmc.0.port="0x8f0"
456device pmtimer # Adjust system timer at wakeup time
457
458#
459# Laptop/Notebook options:
460#
461# See also:
462# apm under `Miscellaneous hardware'
463# above.
464
465# For older notebooks that signal a powerfail condition (external
466# power supply dropped, or battery state low) by issuing an NMI:
467
468options POWERFAIL_NMI # make it beep instead of panicing
469
470#---------------------------------------------------------------------------
471# ISDN4BSD
472#
473# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
474#
475# i4b passive ISDN cards support contains the following hardware drivers:
476#
477# isic - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
478# iwic - Winbond W6692 PCI bus ISDN S/T interface controller
479# ifpi - AVM Fritz!Card PCI driver
480# ifpi2 - AVM Fritz!Card PCI version 2 driver
481# ihfc - Cologne Chip HFC ISA/ISA-PnP chipset driver
482# ifpnp - AVM Fritz!Card PnP driver
483# itjc - Siemens ISAC / TJNet Tiger300/320 chipset
484#
485# i4b active ISDN cards support contains the following hardware drivers:
486#
487# iavc - AVM B1 PCI, AVM B1 ISA, AVM T1
488#
489# Note that the ``options'' (if given) and ``device'' lines must BOTH
490# be uncommented to enable support for a given card !
491#
492# In addition to a hardware driver (and probably an option) the mandatory
493# ISDN protocol stack devices and the mandatory support device must be
494# enabled as well as one or more devices from the optional devices section.
495#
496#---------------------------------------------------------------------------
497# isic driver (Siemens/Infineon chipsets)
498#
499device isic
500#
501# PCI bus Cards:
502# --------------
503#
504# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
505options ELSA_QS1PCI
506#
507#---------------------------------------------------------------------------
508# ifpnp driver for AVM Fritz!Card PnP
509#
510# AVM Fritz!Card PnP
511device ifpnp
512#
513#---------------------------------------------------------------------------
514# ihfc driver for Cologne Chip ISA chipsets (experimental!)
515#
516# Teles 16.3c ISA PnP
517# AcerISDN P10 ISA PnP
518# TELEINT ISDN SPEED No.1
519device ihfc
520#
521#---------------------------------------------------------------------------
522# ifpi driver for AVM Fritz!Card PCI
523#
524# AVM Fritz!Card PCI
525device ifpi
526#
527#---------------------------------------------------------------------------
528# ifpi2 driver for AVM Fritz!Card PCI version 2
529#
530# AVM Fritz!Card PCI version 2
531device ifpi2
532#
533#---------------------------------------------------------------------------
534# iwic driver for Winbond W6692 chipset
535#
536# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
537device iwic
538#
539#---------------------------------------------------------------------------
540# itjc driver for Siemens ISAC / TJNet Tiger300/320 chipset
541#
542# Traverse Technologies NETjet-S
543# Teles PCI-TJ
544device itjc
545#
546#---------------------------------------------------------------------------
547# iavc driver (AVM active cards, needs i4bcapi driver!)
548#
549device iavc
550#
551#---------------------------------------------------------------------------
552# ISDN Protocol Stack - mandatory for all hardware drivers
553#
554# Q.921 / layer 2 - i4b passive cards D channel handling
555device i4bq921
556#
557# Q.931 / layer 3 - i4b passive cards D channel handling
558device i4bq931
559#
560# layer 4 - i4b common passive and active card handling
561device i4b
562#
563#---------------------------------------------------------------------------
564# ISDN devices - mandatory for all hardware drivers
565#
566# userland driver to do ISDN tracing (for passive cards only)
567device i4btrc
568options NI4BTRC=4
569#
570# userland driver to control the whole thing
571device i4bctl
572#
573#---------------------------------------------------------------------------
574# ISDN devices - optional
575#
576# userland driver for access to raw B channel
577device i4brbch
578options NI4BRBCH=4
579#
580# userland driver for telephony
581device i4btel
582options NI4BTEL=2
583#
584# network driver for IP over raw HDLC ISDN
585device i4bipr
586options NI4BIPR=4
587# enable VJ header compression detection for ipr i/f
588options IPR_VJ
589# enable logging of the first n IP packets to isdnd (n=32 here)
590options IPR_LOG=32
591#
592# network driver for sync PPP over ISDN; requires an equivalent
593# number of sppp device to be configured
594device i4bisppp
595options NI4BISPPP=4
596#
597# B-channel interface to the netgraph subsystem
598device i4bing
599options NI4BING=2
600#
601# CAPI driver needed for active ISDN cards (see iavc driver above)
602device i4bcapi
603#
604#---------------------------------------------------------------------------
605
606#
607# Set the number of PV entries per process. Increasing this can
608# stop panics related to heavy use of shared memory. However, that can
609# (combined with large amounts of physical memory) cause panics at
610# boot time due the kernel running out of VM space.
611#
612# If you're tweaking this, you might also want to increase the sysctls
613# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
614#
615# The value below is the one more than the default.
616#
617options PMAP_SHPGPERPROC=201
618
619#
620# Change the size of the kernel virtual address space. Due to
621# constraints in loader(8) on i386, this must be a multiple of 4.
622# 256 = 1 GB of kernel address space. Increasing this also causes
623# a reduction of the address space in user processes. 512 splits
624# the 4GB cpu address space in half (2GB user, 2GB kernel).
625#
626options KVA_PAGES=260
627
628
629#####################################################################
630# ABI Emulation
631
632# Enable iBCS2 runtime support for SCO and ISC binaries
633options IBCS2
634
635# Emulate spx device for client side of SVR3 local X interface
636options SPX_HACK
637
638# Enable Linux ABI emulation
639options COMPAT_LINUX
640
641# Enable i386 a.out binary support
642options COMPAT_AOUT
643
644# Enable the linux-like proc filesystem support (requires COMPAT_LINUX
645# and PSEUDOFS)
646options LINPROCFS
647
648#
649# SysVR4 ABI emulation
650#
651# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
652# a KLD module.
653# The STREAMS network emulation code can also be compiled statically or as a
654# module. If loaded as a module, it must be loaded before the svr4 module
655# (the /usr/sbin/svr4 script does this for you). If compiling statically,
656# the `streams' device must be configured into any kernel which also
657# specifies COMPAT_SVR4. It is possible to have a statically-configured
658# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4
659# script understands that it doesn't need to load the `streams' module under
660# those circumstances.
661# Caveat: At this time, `options KTRACE' is required for the svr4 emulator
662# (whether static or dynamic).
663#
664options COMPAT_SVR4 # build emulator statically
665options DEBUG_SVR4 # enable verbose debugging
666device streams # STREAMS network driver (required for svr4).
667
668
669#####################################################################
670# VM OPTIONS
671
672# Disable the 4 MByte page PSE CPU feature. The PSE feature allows the
673# kernel to use 4 MByte pages to map the kernel instead of 4k pages.
674# This saves on the amount of memory needed for page tables needed to
675# map the kernel. You should only disable this feature as a temporary
676# workaround if you are having problems with it enabled.
677#
678#options DISABLE_PSE
679
680# Disable the global pages PGE CPU feature. The PGE feature allows pages
681# to be marked with the PG_G bit. TLB entries for these pages are not
682# flushed from the cache when %cr3 is reloaded. This can make context
683# switches less expensive. You should only disable this feature as a
684# temporary workaround if you are having problems with it enabled.
685#
686#options DISABLE_PG_G
687
688# KSTACK_PAGES is the number of memory pages to assign to the kernel
689# stack of each thread.
690
691options KSTACK_PAGES=3
692
693#####################################################################
694
695# More undocumented options for linting.
696# Note that documenting these are not considered an affront.
697
698options FB_INSTALL_CDEV # install a CDEV entry in /dev
699
700# PECOFF module (Win32 Execution Format)
701options PECOFF_SUPPORT
702options PECOFF_DEBUG
703
704options I4B_SMP_WORKAROUND
705options I586_PMC_GUPROF=0x70000
706options KBDIO_DEBUG=2
707options KBD_MAXRETRY=4
708options KBD_MAXWAIT=6
709options KBD_RESETDELAY=201
710
711options TIMER_FREQ=((14318182+6)/12)
712
713options VM_KMEM_SIZE
714options VM_KMEM_SIZE_MAX
715options VM_KMEM_SIZE_SCALE
716
717
718# The I/O device
719device io
720
721
722#####################################################################
723# Devices we don't want to deal with
724
725nodevice atkbdc
726nodevice atkbd
727nodevice psm
728nodevice vga
729nodevice bt
730nodevice adw
731nodevice aha
732nodevice ahb
733nodevice ahd
734nodevice mpt
735nodevice trm
736nodevice wds
737nodevice asr
738nodevice dpt
739nodevice ciss
740nodevice iir
741nodevice mly
742nodevice ida # Compaq Smart RAID
743nodevice mlx # Mylex DAC960
744nodevice amr # AMI MegaRAID
745nodevice twe # 3ware ATA RAID
746nodevice ataraid
747nodevice cm
748nodevice cs
749nodevice ex
750nodevice fea
751nodevice intpm
752nodevice alpm
753nodevice ichsmb
754nodevice viapm
755nodevice amdpm
756nodevice nfpm
757
758
759#####################################################################
760# Options we don't want to deal with
761
762nooption VGA_DEBUG
763nooption VGA_WIDTH90
764nooption VGA_SLOW_IOACCESS
765nooption VGA_ALT_SEQACCESS
766nooption PSM_RESETAFTERSUSPEND
767nooption PSM_HOOKRESUME
768nooption ATKBD_DFLT_KEYMAP
769nooption AHD_DEBUG
770nooption AHD_DEBUG_OPTS
771nooption AHD_REG_PRETTY_PRINT
772nooption ADW_ALLOW_MEMIO
773nooption DPT_LOST_IRQ
774nooption DPT_RESET_HBA
775nooption DPT_TIMEOUT_FACTOR
776nooption AAC_DEBUG
777nooption ACPI_MAX_THREADS
778
779
780#####################################################################
781# Make options we don't want to deal with
782
783nomakeoption ATKBD_DFLT_KEYMAP
373device ed
374hint.ed.0.at="isa"
375hint.ed.0.port="0x280"
376hint.ed.0.irq="5"
377hint.ed.0.maddr="0xd8000"
378device ie # Hints only required for Starlan
379hint.ie.2.at="isa"
380hint.ie.2.port="0x300"
381hint.ie.2.irq="5"
382hint.ie.2.maddr="0xd0000"
383device lnc
384hint.lnc.0.at="isa"
385hint.lnc.0.port="0x280"
386hint.lnc.0.irq="10"
387hint.lnc.0.drq="0"
388device sbni
389hint.sbni.0.at="isa"
390hint.sbni.0.port="0x210"
391hint.sbni.0.irq="0xefdead"
392hint.sbni.0.flags="0"
393device snc
394hint.snc.0.at="isa"
395hint.snc.0.port="0x888"
396hint.snc.0.irq="6"
397hint.snc.0.maddr="0xc0000"
398device sr
399device oltr
400
401#
402# SCSI host adapters:
403#
404# ct: WD33C93[ABC] based SCSI host adapters.
405# ncv: NCR 53C500 based SCSI host adapters.
406# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
407# stg: TMC 18C30, 18C50 based SCSI host adapters.
408
409device ct
410hint.ct.0.at="isa"
411device ncv
412device nsp
413device stg
414
415#
416# SafeNet crypto driver: can be moved to the MI NOTES as soon as
417# it's tested on a big-endian machine
418#
419device safe # SafeNet 1141
420options SAFE_DEBUG # enable debugging support: hw.safe.debug
421options SAFE_RNDTEST # enable rndtest support
422
423#####################################################################
424
425#
426# Miscellaneous hardware:
427#
428# apm: Laptop Advanced Power Management (experimental)
429# pmtimer: Timer device driver for power management events (APM or ACPI)
430# cy: Cyclades serial driver
431# digi: Digiboard driver
432
433# Notes on APM
434# The flags takes the following meaning for apm0:
435# 0x0020 Statclock is broken.
436
437device apm
438hint.apm.0.flags="0x20"
439device canbus
440device canbepm
441device cy
442options CY_PCI_FASTINTR # Use with cy_pci unless irq is shared
443device digi
444# BIOS & FEP/OS components of device digi.
445device digi_CX
446device digi_CX_PCI
447device digi_EPCX
448device digi_EPCX_PCI
449device digi_Xe
450device digi_Xem
451device digi_Xr
452device olpt
453hint.olpt.0.at="isa"
454hint.olpt.0.port="0x040"
455device pmc
456hint.pmc.0.at="isa"
457hint.pmc.0.port="0x8f0"
458device pmtimer # Adjust system timer at wakeup time
459
460#
461# Laptop/Notebook options:
462#
463# See also:
464# apm under `Miscellaneous hardware'
465# above.
466
467# For older notebooks that signal a powerfail condition (external
468# power supply dropped, or battery state low) by issuing an NMI:
469
470options POWERFAIL_NMI # make it beep instead of panicing
471
472#---------------------------------------------------------------------------
473# ISDN4BSD
474#
475# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
476#
477# i4b passive ISDN cards support contains the following hardware drivers:
478#
479# isic - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
480# iwic - Winbond W6692 PCI bus ISDN S/T interface controller
481# ifpi - AVM Fritz!Card PCI driver
482# ifpi2 - AVM Fritz!Card PCI version 2 driver
483# ihfc - Cologne Chip HFC ISA/ISA-PnP chipset driver
484# ifpnp - AVM Fritz!Card PnP driver
485# itjc - Siemens ISAC / TJNet Tiger300/320 chipset
486#
487# i4b active ISDN cards support contains the following hardware drivers:
488#
489# iavc - AVM B1 PCI, AVM B1 ISA, AVM T1
490#
491# Note that the ``options'' (if given) and ``device'' lines must BOTH
492# be uncommented to enable support for a given card !
493#
494# In addition to a hardware driver (and probably an option) the mandatory
495# ISDN protocol stack devices and the mandatory support device must be
496# enabled as well as one or more devices from the optional devices section.
497#
498#---------------------------------------------------------------------------
499# isic driver (Siemens/Infineon chipsets)
500#
501device isic
502#
503# PCI bus Cards:
504# --------------
505#
506# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
507options ELSA_QS1PCI
508#
509#---------------------------------------------------------------------------
510# ifpnp driver for AVM Fritz!Card PnP
511#
512# AVM Fritz!Card PnP
513device ifpnp
514#
515#---------------------------------------------------------------------------
516# ihfc driver for Cologne Chip ISA chipsets (experimental!)
517#
518# Teles 16.3c ISA PnP
519# AcerISDN P10 ISA PnP
520# TELEINT ISDN SPEED No.1
521device ihfc
522#
523#---------------------------------------------------------------------------
524# ifpi driver for AVM Fritz!Card PCI
525#
526# AVM Fritz!Card PCI
527device ifpi
528#
529#---------------------------------------------------------------------------
530# ifpi2 driver for AVM Fritz!Card PCI version 2
531#
532# AVM Fritz!Card PCI version 2
533device ifpi2
534#
535#---------------------------------------------------------------------------
536# iwic driver for Winbond W6692 chipset
537#
538# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
539device iwic
540#
541#---------------------------------------------------------------------------
542# itjc driver for Siemens ISAC / TJNet Tiger300/320 chipset
543#
544# Traverse Technologies NETjet-S
545# Teles PCI-TJ
546device itjc
547#
548#---------------------------------------------------------------------------
549# iavc driver (AVM active cards, needs i4bcapi driver!)
550#
551device iavc
552#
553#---------------------------------------------------------------------------
554# ISDN Protocol Stack - mandatory for all hardware drivers
555#
556# Q.921 / layer 2 - i4b passive cards D channel handling
557device i4bq921
558#
559# Q.931 / layer 3 - i4b passive cards D channel handling
560device i4bq931
561#
562# layer 4 - i4b common passive and active card handling
563device i4b
564#
565#---------------------------------------------------------------------------
566# ISDN devices - mandatory for all hardware drivers
567#
568# userland driver to do ISDN tracing (for passive cards only)
569device i4btrc
570options NI4BTRC=4
571#
572# userland driver to control the whole thing
573device i4bctl
574#
575#---------------------------------------------------------------------------
576# ISDN devices - optional
577#
578# userland driver for access to raw B channel
579device i4brbch
580options NI4BRBCH=4
581#
582# userland driver for telephony
583device i4btel
584options NI4BTEL=2
585#
586# network driver for IP over raw HDLC ISDN
587device i4bipr
588options NI4BIPR=4
589# enable VJ header compression detection for ipr i/f
590options IPR_VJ
591# enable logging of the first n IP packets to isdnd (n=32 here)
592options IPR_LOG=32
593#
594# network driver for sync PPP over ISDN; requires an equivalent
595# number of sppp device to be configured
596device i4bisppp
597options NI4BISPPP=4
598#
599# B-channel interface to the netgraph subsystem
600device i4bing
601options NI4BING=2
602#
603# CAPI driver needed for active ISDN cards (see iavc driver above)
604device i4bcapi
605#
606#---------------------------------------------------------------------------
607
608#
609# Set the number of PV entries per process. Increasing this can
610# stop panics related to heavy use of shared memory. However, that can
611# (combined with large amounts of physical memory) cause panics at
612# boot time due the kernel running out of VM space.
613#
614# If you're tweaking this, you might also want to increase the sysctls
615# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
616#
617# The value below is the one more than the default.
618#
619options PMAP_SHPGPERPROC=201
620
621#
622# Change the size of the kernel virtual address space. Due to
623# constraints in loader(8) on i386, this must be a multiple of 4.
624# 256 = 1 GB of kernel address space. Increasing this also causes
625# a reduction of the address space in user processes. 512 splits
626# the 4GB cpu address space in half (2GB user, 2GB kernel).
627#
628options KVA_PAGES=260
629
630
631#####################################################################
632# ABI Emulation
633
634# Enable iBCS2 runtime support for SCO and ISC binaries
635options IBCS2
636
637# Emulate spx device for client side of SVR3 local X interface
638options SPX_HACK
639
640# Enable Linux ABI emulation
641options COMPAT_LINUX
642
643# Enable i386 a.out binary support
644options COMPAT_AOUT
645
646# Enable the linux-like proc filesystem support (requires COMPAT_LINUX
647# and PSEUDOFS)
648options LINPROCFS
649
650#
651# SysVR4 ABI emulation
652#
653# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
654# a KLD module.
655# The STREAMS network emulation code can also be compiled statically or as a
656# module. If loaded as a module, it must be loaded before the svr4 module
657# (the /usr/sbin/svr4 script does this for you). If compiling statically,
658# the `streams' device must be configured into any kernel which also
659# specifies COMPAT_SVR4. It is possible to have a statically-configured
660# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4
661# script understands that it doesn't need to load the `streams' module under
662# those circumstances.
663# Caveat: At this time, `options KTRACE' is required for the svr4 emulator
664# (whether static or dynamic).
665#
666options COMPAT_SVR4 # build emulator statically
667options DEBUG_SVR4 # enable verbose debugging
668device streams # STREAMS network driver (required for svr4).
669
670
671#####################################################################
672# VM OPTIONS
673
674# Disable the 4 MByte page PSE CPU feature. The PSE feature allows the
675# kernel to use 4 MByte pages to map the kernel instead of 4k pages.
676# This saves on the amount of memory needed for page tables needed to
677# map the kernel. You should only disable this feature as a temporary
678# workaround if you are having problems with it enabled.
679#
680#options DISABLE_PSE
681
682# Disable the global pages PGE CPU feature. The PGE feature allows pages
683# to be marked with the PG_G bit. TLB entries for these pages are not
684# flushed from the cache when %cr3 is reloaded. This can make context
685# switches less expensive. You should only disable this feature as a
686# temporary workaround if you are having problems with it enabled.
687#
688#options DISABLE_PG_G
689
690# KSTACK_PAGES is the number of memory pages to assign to the kernel
691# stack of each thread.
692
693options KSTACK_PAGES=3
694
695#####################################################################
696
697# More undocumented options for linting.
698# Note that documenting these are not considered an affront.
699
700options FB_INSTALL_CDEV # install a CDEV entry in /dev
701
702# PECOFF module (Win32 Execution Format)
703options PECOFF_SUPPORT
704options PECOFF_DEBUG
705
706options I4B_SMP_WORKAROUND
707options I586_PMC_GUPROF=0x70000
708options KBDIO_DEBUG=2
709options KBD_MAXRETRY=4
710options KBD_MAXWAIT=6
711options KBD_RESETDELAY=201
712
713options TIMER_FREQ=((14318182+6)/12)
714
715options VM_KMEM_SIZE
716options VM_KMEM_SIZE_MAX
717options VM_KMEM_SIZE_SCALE
718
719
720# The I/O device
721device io
722
723
724#####################################################################
725# Devices we don't want to deal with
726
727nodevice atkbdc
728nodevice atkbd
729nodevice psm
730nodevice vga
731nodevice bt
732nodevice adw
733nodevice aha
734nodevice ahb
735nodevice ahd
736nodevice mpt
737nodevice trm
738nodevice wds
739nodevice asr
740nodevice dpt
741nodevice ciss
742nodevice iir
743nodevice mly
744nodevice ida # Compaq Smart RAID
745nodevice mlx # Mylex DAC960
746nodevice amr # AMI MegaRAID
747nodevice twe # 3ware ATA RAID
748nodevice ataraid
749nodevice cm
750nodevice cs
751nodevice ex
752nodevice fea
753nodevice intpm
754nodevice alpm
755nodevice ichsmb
756nodevice viapm
757nodevice amdpm
758nodevice nfpm
759
760
761#####################################################################
762# Options we don't want to deal with
763
764nooption VGA_DEBUG
765nooption VGA_WIDTH90
766nooption VGA_SLOW_IOACCESS
767nooption VGA_ALT_SEQACCESS
768nooption PSM_RESETAFTERSUSPEND
769nooption PSM_HOOKRESUME
770nooption ATKBD_DFLT_KEYMAP
771nooption AHD_DEBUG
772nooption AHD_DEBUG_OPTS
773nooption AHD_REG_PRETTY_PRINT
774nooption ADW_ALLOW_MEMIO
775nooption DPT_LOST_IRQ
776nooption DPT_RESET_HBA
777nooption DPT_TIMEOUT_FACTOR
778nooption AAC_DEBUG
779nooption ACPI_MAX_THREADS
780
781
782#####################################################################
783# Make options we don't want to deal with
784
785nomakeoption ATKBD_DFLT_KEYMAP