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