Deleted Added
full compact
NOTES (152865) NOTES (152952)
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 152865 2005-11-27 23:17:00Z ru $
7# $FreeBSD: head/sys/pc98/conf/NOTES 152952 2005-11-30 11:58:01Z nyan $
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
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
331device sisdrm # SiS 300/305, 540, 630
332device tdfxdrm # 3dfx Voodoo 3/4/5 and Banshee
333options DRM_DEBUG # Include debug printfs (slow)
334
335#
336# Bus mouse
337#
338device mse
339hint.mse.0.at="isa"
340hint.mse.0.port="0x7fd9"
341hint.mse.0.irq="13"
342
343#
344# Network interfaces:
345#
346
347# ar: Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
348# (requires sppp)
349# cp: Cronyx Tau-PCI sync single/dual/four port
350# V.35/RS-232/RS-530/RS-449/X.21/G.703/E1/E3/T3/STS-1
351# serial adaptor (requires sppp (default), or NETGRAPH if
352# NETGRAPH_CRONYX is configured)
353# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
354# HP PC Lan+, various PC Card devices
355# (requires miibus)
356# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
357# Intel EtherExpress
358# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and
359# Am79C960)
360# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133.
361# Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140,
362# OC-3141, OC-3540 and OC-3250.
363# sbni: Granch SBNI12-xx ISA and PCI adapters
364# sr: RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
365
366# Order for ISA/EISA devices is important here
367
368device ar
369device cp
370device ed
371hint.ed.0.at="isa"
372hint.ed.0.port="0x280"
373hint.ed.0.irq="5"
374hint.ed.0.maddr="0xd8000"
375device ie # Hints only required for Starlan
376hint.ie.2.at="isa"
377hint.ie.2.port="0x300"
378hint.ie.2.irq="5"
379hint.ie.2.maddr="0xd0000"
380device lnc
381hint.lnc.0.at="isa"
382hint.lnc.0.port="0x280"
383hint.lnc.0.irq="10"
384hint.lnc.0.drq="0"
385device sbni
386hint.sbni.0.at="isa"
387hint.sbni.0.port="0x210"
388hint.sbni.0.irq="0xefdead"
389hint.sbni.0.flags="0"
390device snc
391hint.snc.0.at="isa"
392hint.snc.0.port="0x888"
393hint.snc.0.irq="6"
394hint.snc.0.maddr="0xc0000"
395device sr
396device oltr
397
398#
399# SCSI host adapters:
400#
401# ct: WD33C93[ABC] based SCSI host adapters.
402# ncv: NCR 53C500 based SCSI host adapters.
403# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
404# stg: TMC 18C30, 18C50 based SCSI host adapters.
405
406device ct
407hint.ct.0.at="isa"
408device ncv
409device nsp
410device stg
411
412#
413# SafeNet crypto driver: can be moved to the MI NOTES as soon as
414# it's tested on a big-endian machine
415#
416device safe # SafeNet 1141
417options SAFE_DEBUG # enable debugging support: hw.safe.debug
418options SAFE_RNDTEST # enable rndtest support
419
420#####################################################################
421
422#
423# Miscellaneous hardware:
424#
425# apm: Laptop Advanced Power Management (experimental)
426# pmtimer: Timer device driver for power management events (APM or ACPI)
427# cy: Cyclades serial driver
428# digi: Digiboard driver
429
430# Notes on APM
431# The flags takes the following meaning for apm0:
432# 0x0020 Statclock is broken.
433
434device apm
435hint.apm.0.flags="0x20"
436device canbus
437device canbepm
438device cy
439options CY_PCI_FASTINTR # Use with cy_pci unless irq is shared
440device digi
441# BIOS & FEP/OS components of device digi.
442device digi_CX
443device digi_CX_PCI
444device digi_EPCX
445device digi_EPCX_PCI
446device digi_Xe
447device digi_Xem
448device digi_Xr
449device olpt
450hint.olpt.0.at="isa"
451hint.olpt.0.port="0x040"
452device pmc
453hint.pmc.0.at="isa"
454hint.pmc.0.port="0x8f0"
455device pmtimer # Adjust system timer at wakeup time
456
457#
458# Laptop/Notebook options:
459#
460# See also:
461# apm under `Miscellaneous hardware'
462# above.
463
464# For older notebooks that signal a powerfail condition (external
465# power supply dropped, or battery state low) by issuing an NMI:
466
467options POWERFAIL_NMI # make it beep instead of panicing
468
469#---------------------------------------------------------------------------
470# ISDN4BSD
471#
472# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
473#
474# i4b passive ISDN cards support contains the following hardware drivers:
475#
476# isic - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
477# iwic - Winbond W6692 PCI bus ISDN S/T interface controller
478# ifpi - AVM Fritz!Card PCI driver
479# ifpi2 - AVM Fritz!Card PCI version 2 driver
480# ihfc - Cologne Chip HFC ISA/ISA-PnP chipset driver
481# ifpnp - AVM Fritz!Card PnP driver
482# itjc - Siemens ISAC / TJNet Tiger300/320 chipset
483#
484# i4b active ISDN cards support contains the following hardware drivers:
485#
486# iavc - AVM B1 PCI, AVM B1 ISA, AVM T1
487#
488# Note that the ``options'' (if given) and ``device'' lines must BOTH
489# be uncommented to enable support for a given card !
490#
491# In addition to a hardware driver (and probably an option) the mandatory
492# ISDN protocol stack devices and the mandatory support device must be
493# enabled as well as one or more devices from the optional devices section.
494#
495#---------------------------------------------------------------------------
496# isic driver (Siemens/Infineon chipsets)
497#
498device isic
499#
500# PCI bus Cards:
501# --------------
502#
503# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
504options ELSA_QS1PCI
505#
506#---------------------------------------------------------------------------
507# ifpnp driver for AVM Fritz!Card PnP
508#
509# AVM Fritz!Card PnP
510device ifpnp
511#
512#---------------------------------------------------------------------------
513# ihfc driver for Cologne Chip ISA chipsets (experimental!)
514#
515# Teles 16.3c ISA PnP
516# AcerISDN P10 ISA PnP
517# TELEINT ISDN SPEED No.1
518device ihfc
519#
520#---------------------------------------------------------------------------
521# ifpi driver for AVM Fritz!Card PCI
522#
523# AVM Fritz!Card PCI
524device ifpi
525#
526#---------------------------------------------------------------------------
527# ifpi2 driver for AVM Fritz!Card PCI version 2
528#
529# AVM Fritz!Card PCI version 2
530device ifpi2
531#
532#---------------------------------------------------------------------------
533# iwic driver for Winbond W6692 chipset
534#
535# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
536device iwic
537#
538#---------------------------------------------------------------------------
539# itjc driver for Siemens ISAC / TJNet Tiger300/320 chipset
540#
541# Traverse Technologies NETjet-S
542# Teles PCI-TJ
543device itjc
544#
545#---------------------------------------------------------------------------
546# iavc driver (AVM active cards, needs i4bcapi driver!)
547#
548device iavc
549#
550#---------------------------------------------------------------------------
551# ISDN Protocol Stack - mandatory for all hardware drivers
552#
553# Q.921 / layer 2 - i4b passive cards D channel handling
554device i4bq921
555#
556# Q.931 / layer 3 - i4b passive cards D channel handling
557device i4bq931
558#
559# layer 4 - i4b common passive and active card handling
560device i4b
561#
562#---------------------------------------------------------------------------
563# ISDN devices - mandatory for all hardware drivers
564#
565# userland driver to do ISDN tracing (for passive cards only)
566device i4btrc
567options NI4BTRC=4
568#
569# userland driver to control the whole thing
570device i4bctl
571#
572#---------------------------------------------------------------------------
573# ISDN devices - optional
574#
575# userland driver for access to raw B channel
576device i4brbch
577options NI4BRBCH=4
578#
579# userland driver for telephony
580device i4btel
581options NI4BTEL=2
582#
583# network driver for IP over raw HDLC ISDN
584device i4bipr
585options NI4BIPR=4
586# enable VJ header compression detection for ipr i/f
587options IPR_VJ
588# enable logging of the first n IP packets to isdnd (n=32 here)
589options IPR_LOG=32
590#
591# network driver for sync PPP over ISDN; requires an equivalent
592# number of sppp device to be configured
593device i4bisppp
594options NI4BISPPP=4
595#
596# B-channel interface to the netgraph subsystem
597device i4bing
598options NI4BING=2
599#
600# CAPI driver needed for active ISDN cards (see iavc driver above)
601device i4bcapi
602#
603#---------------------------------------------------------------------------
604
605#
606# Set the number of PV entries per process. Increasing this can
607# stop panics related to heavy use of shared memory. However, that can
608# (combined with large amounts of physical memory) cause panics at
609# boot time due the kernel running out of VM space.
610#
611# If you're tweaking this, you might also want to increase the sysctls
612# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
613#
614# The value below is the one more than the default.
615#
616options PMAP_SHPGPERPROC=201
617
618#
619# Change the size of the kernel virtual address space. Due to
620# constraints in loader(8) on i386, this must be a multiple of 4.
621# 256 = 1 GB of kernel address space. Increasing this also causes
622# a reduction of the address space in user processes. 512 splits
623# the 4GB cpu address space in half (2GB user, 2GB kernel).
624#
625options KVA_PAGES=260
626
627
628#####################################################################
629# ABI Emulation
630
631# Enable iBCS2 runtime support for SCO and ISC binaries
632options IBCS2
633
634# Emulate spx device for client side of SVR3 local X interface
635options SPX_HACK
636
637# Enable Linux ABI emulation
638options COMPAT_LINUX
639
640# Enable i386 a.out binary support
641options COMPAT_AOUT
642
643# Enable the linux-like proc filesystem support (requires COMPAT_LINUX
644# and PSEUDOFS)
645options LINPROCFS
646
647#
648# SysVR4 ABI emulation
649#
650# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
651# a KLD module.
652# The STREAMS network emulation code can also be compiled statically or as a
653# module. If loaded as a module, it must be loaded before the svr4 module
654# (the /usr/sbin/svr4 script does this for you). If compiling statically,
655# the `streams' device must be configured into any kernel which also
656# specifies COMPAT_SVR4. It is possible to have a statically-configured
657# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4
658# script understands that it doesn't need to load the `streams' module under
659# those circumstances.
660# Caveat: At this time, `options KTRACE' is required for the svr4 emulator
661# (whether static or dynamic).
662#
663options COMPAT_SVR4 # build emulator statically
664options DEBUG_SVR4 # enable verbose debugging
665device streams # STREAMS network driver (required for svr4).
666
667
668#####################################################################
669# VM OPTIONS
670
671# Disable the 4 MByte page PSE CPU feature. The PSE feature allows the
672# kernel to use 4 MByte pages to map the kernel instead of 4k pages.
673# This saves on the amount of memory needed for page tables needed to
674# map the kernel. You should only disable this feature as a temporary
675# workaround if you are having problems with it enabled.
676#
677#options DISABLE_PSE
678
679# Disable the global pages PGE CPU feature. The PGE feature allows pages
680# to be marked with the PG_G bit. TLB entries for these pages are not
681# flushed from the cache when %cr3 is reloaded. This can make context
682# switches less expensive. You should only disable this feature as a
683# temporary workaround if you are having problems with it enabled.
684#
685#options DISABLE_PG_G
686
687# KSTACK_PAGES is the number of memory pages to assign to the kernel
688# stack of each thread.
689
690options KSTACK_PAGES=3
691
692#####################################################################
693
694# More undocumented options for linting.
695# Note that documenting these are not considered an affront.
696
697options FB_INSTALL_CDEV # install a CDEV entry in /dev
698
699# PECOFF module (Win32 Execution Format)
700options PECOFF_SUPPORT
701options PECOFF_DEBUG
702
703options I4B_SMP_WORKAROUND
704options I586_PMC_GUPROF=0x70000
705options KBDIO_DEBUG=2
706options KBD_MAXRETRY=4
707options KBD_MAXWAIT=6
708options KBD_RESETDELAY=201
709
710options TIMER_FREQ=((14318182+6)/12)
711
712options VM_KMEM_SIZE
713options VM_KMEM_SIZE_MAX
714options VM_KMEM_SIZE_SCALE
715
716
717# The I/O device
718device io
719
720
721#####################################################################
722# Devices we don't want to deal with
723
724nodevice atkbdc
725nodevice atkbd
726nodevice psm
727nodevice vga
728nodevice bt
729nodevice adw
730nodevice aha
731nodevice ahb
732nodevice ahd
733nodevice mpt
734nodevice trm
735nodevice wds
736nodevice asr
737nodevice dpt
738nodevice ciss
739nodevice iir
740nodevice mly
741nodevice ida # Compaq Smart RAID
742nodevice mlx # Mylex DAC960
743nodevice amr # AMI MegaRAID
744nodevice twe # 3ware ATA RAID
745nodevice ataraid
746nodevice cm
747nodevice cs
748nodevice ex
749nodevice fea
750nodevice intpm
751nodevice alpm
752nodevice ichsmb
753nodevice viapm
754nodevice amdpm
755nodevice nfpm
756
757
758#####################################################################
759# Options we don't want to deal with
760
761nooption VGA_DEBUG
762nooption VGA_WIDTH90
763nooption VGA_SLOW_IOACCESS
764nooption VGA_ALT_SEQACCESS
765nooption PSM_RESETAFTERSUSPEND
766nooption PSM_HOOKRESUME
767nooption ATKBD_DFLT_KEYMAP
768nooption AHD_DEBUG
769nooption AHD_DEBUG_OPTS
770nooption AHD_REG_PRETTY_PRINT
771nooption ADW_ALLOW_MEMIO
772nooption DPT_LOST_IRQ
773nooption DPT_RESET_HBA
774nooption DPT_TIMEOUT_FACTOR
775nooption AAC_DEBUG
776nooption ACPI_MAX_THREADS
777
778
779#####################################################################
780# Make options we don't want to deal with
781
782nomakeoption ATKBD_DFLT_KEYMAP
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# 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
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