Deleted Added
full compact
NOTES (111313) NOTES (111500)
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/i386/conf/NOTES 111313 2003-02-23 13:32:33Z nyan $
7# $FreeBSD: head/sys/i386/conf/NOTES 111500 2003-02-25 20:59:23Z obrien $
8#
9
10#
11# This directive is mandatory; it defines the architecture to be
12# configured for; in this case, the 386 family based IBM-PC and
13# compatibles.
14#
15machine i386
16
17#
18# We want LINT to cover profiling as well
19profile 2
20
21
22#####################################################################
23# SMP OPTIONS:
24#
25# APIC_IO enables the use of the IO APIC for Symmetric I/O.
26#
27# Notes:
28#
29# An SMP kernel will ONLY run on an Intel MP spec. qualified motherboard.
30#
31# Be sure to disable 'cpu I386_CPU' && 'cpu I486_CPU' for SMP kernels.
32#
33# Check the 'Rogue SMP hardware' section to see if additional options
34# are required by your hardware.
35#
36
37# Mandatory:
38options APIC_IO # Symmetric (APIC) I/O
39
40#
41# Rogue SMP hardware:
42#
43
44# Bridged PCI cards:
45#
46# The MP tables of most of the current generation MP motherboards
47# do NOT properly support bridged PCI cards. To use one of these
48# cards you should refer to ???
49
50
51#####################################################################
52# CPU OPTIONS
53
54#
55# You must specify at least one CPU (the one you intend to run on);
56# deleting the specification for CPUs you don't need to use may make
57# parts of the system run faster.
58# I386_CPU is mutually exclusive with the other CPU types.
59#
60#cpu I386_CPU
61cpu I486_CPU
62cpu I586_CPU # aka Pentium(tm)
63cpu I686_CPU # aka Pentium Pro(tm)
64
65#
66# Options for CPU features.
67#
68# CPU_ATHLON_SSE_HACK tries to enable SSE instructions when the BIOS has
69# forgotten to enable them.
70#
71# CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM
72# BlueLightning CPU. It works only with Cyrix FPU, and this option
73# should not be used with Intel FPU.
74#
75# CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning
76# CPU if CPU supports it. The default is double-clock mode on
77# BlueLightning CPU box.
78#
79# CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1).
80#
81# CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct
82# mapped mode. Default is 2-way set associative mode.
83#
84# CPU_CYRIX_NO_LOCK enables weak locking for the entire address space
85# of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1.
86# Otherwise, the NO_LOCK bit of CCR1 is cleared. (NOTE 3)
87#
88# CPU_DISABLE_5X86_LSSER disables load store serialize (i.e. enables
89# reorder). This option should not be used if you use memory mapped
90# I/O device(s).
91#
92# CPU_ELAN enables support for AMDs ElanSC520 CPU.
93# ELAN_XTAL sets the clock crystal frequency in Hz
94# ELAN_PPS enables precision timestamp code.
95#
96# CPU_ENABLE_SSE enables SSE/MMX2 instructions support. This is default
97# on I686_CPU and above.
98# CPU_DISABLE_SSE explicitly prevent I686_CPU from turning on SSE.
99#
100# CPU_FASTER_5X86_FPU enables faster FPU exception handler.
101#
102# CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products
103# for i386 machines.
104#
105# CPU_IORT defines I/O clock delay time (NOTE 1). Default values of
106# I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively
107# (no clock delay).
108#
109# CPU_L2_LATENCY specifed the L2 cache latency value. This option is used
110# only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected.
111# The default value is 5.
112#
113# CPU_LOOP_EN prevents flushing the prefetch buffer if the destination
114# of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE
115# 1).
116#
117# CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs. This option
118# is useful when you use Socket 8 to Socket 370 converter, because most Pentium
119# Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs.
120#
121# CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1).
122#
123# CPU_SUSP_HLT enables suspend on HALT. If this option is set, CPU
124# enters suspend mode following execution of HALT instruction.
125#
126# CPU_UPGRADE_HW_CACHE eliminates unneeded cache flush instruction(s).
127#
128# CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD
129# K5/K6/K6-2 cpus.
130#
131# CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache
132# flush at hold state.
133#
134# CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs
135# without cache flush at hold state, and (2) write-back CPU cache on
136# Cyrix 6x86 whose revision < 2.7 (NOTE 2).
137#
138# NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY
139# Pentiums) from locking up when a LOCK CMPXCHG8B instruction is
140# executed. This option is only needed if I586_CPU is also defined,
141# and should be included for any non-Pentium CPU that defines it.
142#
143# NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors
144# which indicates that the 15-16MB range is *definitely* not being
145# occupied by an ISA memory hole.
146#
147# CPU_DISABLE_CMPXCHG disables the CMPXCHG instruction on > i386 IA32
148# machines. VmWare seems to emulate this instruction poorly, causing
149# the guest OS to run very slowly. Enabling this with a SMP kernel
150# will cause the kernel to be unusable.
151#
152# NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT,
153# CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs.
154# These options may crash your system.
155#
156# NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled
157# in write-through mode when revision < 2.7. If revision of Cyrix
158# 6x86 >= 2.7, CPU cache is always enabled in write-back mode.
159#
160# NOTE 3: This option may cause failures for software that requires
161# locked cycles in order to operate correctly.
162#
163options CPU_ATHLON_SSE_HACK
164options CPU_BLUELIGHTNING_FPU_OP_CACHE
165options CPU_BLUELIGHTNING_3X
166options CPU_BTB_EN
167options CPU_DIRECT_MAPPED_CACHE
168options CPU_DISABLE_5X86_LSSER
169options CPU_ELAN
170options ELAN_XTAL=32768000
171options ELAN_PPS
172options CPU_ENABLE_SSE
173#options CPU_DISABLE_SSE
174options CPU_FASTER_5X86_FPU
175options CPU_I486_ON_386
176options CPU_IORT
177options CPU_L2_LATENCY=5
178options CPU_LOOP_EN
179options CPU_PPRO2CELERON
180options CPU_RSTK_EN
181options CPU_SUSP_HLT
182options CPU_UPGRADE_HW_CACHE
183options CPU_WT_ALLOC
184options CYRIX_CACHE_WORKS
185options CYRIX_CACHE_REALLY_WORKS
186#options NO_F00F_HACK
187options CPU_DISABLE_CMPXCHG
188
189#
190# A math emulator is mandatory if you wish to run on hardware which
191# does not have a floating-point processor. Pick either the original,
192# bogus (but freely-distributable) math emulator, or a much more
193# fully-featured but GPL-licensed emulator taken from Linux.
194#
195options MATH_EMULATE #Support for x87 emulation
196# Don't enable both of these in a real config.
197options GPL_MATH_EMULATE #Support for x87 emulation via
198
199# Debug options
200options NPX_DEBUG # enable npx debugging (FPU/math emu)
201 #new math emulator
202
203#
204# PERFMON causes the driver for Pentium/Pentium Pro performance counters
205# to be compiled. See perfmon(4) for more information.
206#
207options PERFMON
208
209
210#####################################################################
211# NETWORKING OPTIONS
212
213#
214# DEVICE_POLLING adds support for mixed interrupt-polling handling
215# of network device drivers, which has significant benefits in terms
216# of robustness to overloads and responsivity, as well as permitting
217# accurate scheduling of the CPU time between kernel network processing
218# and other activities. The drawback is a moderate (up to 1/HZ seconds)
219# potential increase in response times.
220# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING
221# to achieve smoother behaviour.
222# Additionally, you can enable/disable polling at runtime with the
223# sysctl variable kern.polling.enable (defaults off), and select
224# the CPU fraction reserved to userland with the sysctl variable
225# kern.polling.user_frac (default 50, range 0..100).
226#
227# Only the "dc" "fxp" and "sis" devices support this mode of operation at
228# the time of this writing.
229
230options DEVICE_POLLING
231
232
233#####################################################################
234# CLOCK OPTIONS
235
236# The following options are used for debugging clock behavior only, and
237# should not be used for production systems.
238#
239# CLK_CALIBRATION_LOOP will run the clock calibration loop at startup
240# until the user presses a key.
241
242options CLK_CALIBRATION_LOOP
243
244# The following two options measure the frequency of the corresponding
245# clock relative to the RTC (onboard mc146818a).
246
247options CLK_USE_I8254_CALIBRATION
248options CLK_USE_TSC_CALIBRATION
249
250
251#####################################################################
252# MISCELLANEOUS DEVICES AND OPTIONS
253
254device speaker #Play IBM BASIC-style noises out your speaker
255hint.speaker.0.at="isa"
256hint.speaker.0.port="0x61"
257device gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT!
258device apm_saver # Requires APM
259
260
261#####################################################################
262# HARDWARE BUS CONFIGURATION
263
264#
265# ISA bus
266#
267device isa
268
269#
270# Options for `isa':
271#
272# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
273# interrupt controller. This saves about 0.7-1.25 usec for each interrupt.
274# This option breaks suspend/resume on some portables.
275#
276# AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A
277# interrupt controller. This saves about 0.7-1.25 usec for each interrupt.
278# Automatic EOI is documented not to work for for the slave with the
279# original i8259A, but it works for some clones and some integrated
280# versions.
281#
282# MAXMEM specifies the amount of RAM on the machine; if this is not
283# specified, FreeBSD will first read the amount of memory from the CMOS
284# RAM, so the amount of memory will initially be limited to 64MB or 16MB
285# depending on the BIOS. If the BIOS reports 64MB, a memory probe will
286# then attempt to detect the installed amount of RAM. If this probe
287# fails to detect >64MB RAM you will have to use the MAXMEM option.
288# The amount is in kilobytes, so for a machine with 128MB of RAM, it would
289# be 131072 (128 * 1024).
290#
291# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
292# reset the CPU for reboot. This is needed on some systems with broken
293# keyboard controllers.
294
295options COMPAT_OLDISA #Use ISA shims and glue for old drivers
296options AUTO_EOI_1
297#options AUTO_EOI_2
298
299options MAXMEM=(128*1024)
300#options BROKEN_KEYBOARD_RESET
301
302#
303# EISA bus
304#
305# The EISA bus device is `eisa'. It provides auto-detection and
306# configuration support for all devices on the EISA bus.
307
308device eisa
309
310# By default, only 10 EISA slots are probed, since the slot numbers
311# above clash with the configuration address space of the PCI subsystem,
312# and the EISA probe is not very smart about this. This is sufficient
313# for most machines, but in particular the HP NetServer LC series comes
314# with an onboard AIC7770 dual-channel SCSI controller on EISA slot #11,
315# thus you need to bump this figure to 12 for them.
316options EISA_SLOTS=12
317
318#
319# MCA bus:
320#
321# The MCA bus device is `mca'. It provides auto-detection and
322# configuration support for all devices on the MCA bus.
323# No hints are required for MCA.
324
325device mca
326
327#
328# PCI bus & PCI options:
329#
330device pci
331
332#
333# AGP GART support
334device agp
335
336
337#####################################################################
338# HARDWARE DEVICE CONFIGURATION
339
340#
341# Mandatory devices:
342#
343
8#
9
10#
11# This directive is mandatory; it defines the architecture to be
12# configured for; in this case, the 386 family based IBM-PC and
13# compatibles.
14#
15machine i386
16
17#
18# We want LINT to cover profiling as well
19profile 2
20
21
22#####################################################################
23# SMP OPTIONS:
24#
25# APIC_IO enables the use of the IO APIC for Symmetric I/O.
26#
27# Notes:
28#
29# An SMP kernel will ONLY run on an Intel MP spec. qualified motherboard.
30#
31# Be sure to disable 'cpu I386_CPU' && 'cpu I486_CPU' for SMP kernels.
32#
33# Check the 'Rogue SMP hardware' section to see if additional options
34# are required by your hardware.
35#
36
37# Mandatory:
38options APIC_IO # Symmetric (APIC) I/O
39
40#
41# Rogue SMP hardware:
42#
43
44# Bridged PCI cards:
45#
46# The MP tables of most of the current generation MP motherboards
47# do NOT properly support bridged PCI cards. To use one of these
48# cards you should refer to ???
49
50
51#####################################################################
52# CPU OPTIONS
53
54#
55# You must specify at least one CPU (the one you intend to run on);
56# deleting the specification for CPUs you don't need to use may make
57# parts of the system run faster.
58# I386_CPU is mutually exclusive with the other CPU types.
59#
60#cpu I386_CPU
61cpu I486_CPU
62cpu I586_CPU # aka Pentium(tm)
63cpu I686_CPU # aka Pentium Pro(tm)
64
65#
66# Options for CPU features.
67#
68# CPU_ATHLON_SSE_HACK tries to enable SSE instructions when the BIOS has
69# forgotten to enable them.
70#
71# CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM
72# BlueLightning CPU. It works only with Cyrix FPU, and this option
73# should not be used with Intel FPU.
74#
75# CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning
76# CPU if CPU supports it. The default is double-clock mode on
77# BlueLightning CPU box.
78#
79# CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1).
80#
81# CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct
82# mapped mode. Default is 2-way set associative mode.
83#
84# CPU_CYRIX_NO_LOCK enables weak locking for the entire address space
85# of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1.
86# Otherwise, the NO_LOCK bit of CCR1 is cleared. (NOTE 3)
87#
88# CPU_DISABLE_5X86_LSSER disables load store serialize (i.e. enables
89# reorder). This option should not be used if you use memory mapped
90# I/O device(s).
91#
92# CPU_ELAN enables support for AMDs ElanSC520 CPU.
93# ELAN_XTAL sets the clock crystal frequency in Hz
94# ELAN_PPS enables precision timestamp code.
95#
96# CPU_ENABLE_SSE enables SSE/MMX2 instructions support. This is default
97# on I686_CPU and above.
98# CPU_DISABLE_SSE explicitly prevent I686_CPU from turning on SSE.
99#
100# CPU_FASTER_5X86_FPU enables faster FPU exception handler.
101#
102# CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products
103# for i386 machines.
104#
105# CPU_IORT defines I/O clock delay time (NOTE 1). Default values of
106# I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively
107# (no clock delay).
108#
109# CPU_L2_LATENCY specifed the L2 cache latency value. This option is used
110# only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected.
111# The default value is 5.
112#
113# CPU_LOOP_EN prevents flushing the prefetch buffer if the destination
114# of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE
115# 1).
116#
117# CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs. This option
118# is useful when you use Socket 8 to Socket 370 converter, because most Pentium
119# Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs.
120#
121# CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1).
122#
123# CPU_SUSP_HLT enables suspend on HALT. If this option is set, CPU
124# enters suspend mode following execution of HALT instruction.
125#
126# CPU_UPGRADE_HW_CACHE eliminates unneeded cache flush instruction(s).
127#
128# CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD
129# K5/K6/K6-2 cpus.
130#
131# CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache
132# flush at hold state.
133#
134# CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs
135# without cache flush at hold state, and (2) write-back CPU cache on
136# Cyrix 6x86 whose revision < 2.7 (NOTE 2).
137#
138# NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY
139# Pentiums) from locking up when a LOCK CMPXCHG8B instruction is
140# executed. This option is only needed if I586_CPU is also defined,
141# and should be included for any non-Pentium CPU that defines it.
142#
143# NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors
144# which indicates that the 15-16MB range is *definitely* not being
145# occupied by an ISA memory hole.
146#
147# CPU_DISABLE_CMPXCHG disables the CMPXCHG instruction on > i386 IA32
148# machines. VmWare seems to emulate this instruction poorly, causing
149# the guest OS to run very slowly. Enabling this with a SMP kernel
150# will cause the kernel to be unusable.
151#
152# NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT,
153# CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs.
154# These options may crash your system.
155#
156# NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled
157# in write-through mode when revision < 2.7. If revision of Cyrix
158# 6x86 >= 2.7, CPU cache is always enabled in write-back mode.
159#
160# NOTE 3: This option may cause failures for software that requires
161# locked cycles in order to operate correctly.
162#
163options CPU_ATHLON_SSE_HACK
164options CPU_BLUELIGHTNING_FPU_OP_CACHE
165options CPU_BLUELIGHTNING_3X
166options CPU_BTB_EN
167options CPU_DIRECT_MAPPED_CACHE
168options CPU_DISABLE_5X86_LSSER
169options CPU_ELAN
170options ELAN_XTAL=32768000
171options ELAN_PPS
172options CPU_ENABLE_SSE
173#options CPU_DISABLE_SSE
174options CPU_FASTER_5X86_FPU
175options CPU_I486_ON_386
176options CPU_IORT
177options CPU_L2_LATENCY=5
178options CPU_LOOP_EN
179options CPU_PPRO2CELERON
180options CPU_RSTK_EN
181options CPU_SUSP_HLT
182options CPU_UPGRADE_HW_CACHE
183options CPU_WT_ALLOC
184options CYRIX_CACHE_WORKS
185options CYRIX_CACHE_REALLY_WORKS
186#options NO_F00F_HACK
187options CPU_DISABLE_CMPXCHG
188
189#
190# A math emulator is mandatory if you wish to run on hardware which
191# does not have a floating-point processor. Pick either the original,
192# bogus (but freely-distributable) math emulator, or a much more
193# fully-featured but GPL-licensed emulator taken from Linux.
194#
195options MATH_EMULATE #Support for x87 emulation
196# Don't enable both of these in a real config.
197options GPL_MATH_EMULATE #Support for x87 emulation via
198
199# Debug options
200options NPX_DEBUG # enable npx debugging (FPU/math emu)
201 #new math emulator
202
203#
204# PERFMON causes the driver for Pentium/Pentium Pro performance counters
205# to be compiled. See perfmon(4) for more information.
206#
207options PERFMON
208
209
210#####################################################################
211# NETWORKING OPTIONS
212
213#
214# DEVICE_POLLING adds support for mixed interrupt-polling handling
215# of network device drivers, which has significant benefits in terms
216# of robustness to overloads and responsivity, as well as permitting
217# accurate scheduling of the CPU time between kernel network processing
218# and other activities. The drawback is a moderate (up to 1/HZ seconds)
219# potential increase in response times.
220# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING
221# to achieve smoother behaviour.
222# Additionally, you can enable/disable polling at runtime with the
223# sysctl variable kern.polling.enable (defaults off), and select
224# the CPU fraction reserved to userland with the sysctl variable
225# kern.polling.user_frac (default 50, range 0..100).
226#
227# Only the "dc" "fxp" and "sis" devices support this mode of operation at
228# the time of this writing.
229
230options DEVICE_POLLING
231
232
233#####################################################################
234# CLOCK OPTIONS
235
236# The following options are used for debugging clock behavior only, and
237# should not be used for production systems.
238#
239# CLK_CALIBRATION_LOOP will run the clock calibration loop at startup
240# until the user presses a key.
241
242options CLK_CALIBRATION_LOOP
243
244# The following two options measure the frequency of the corresponding
245# clock relative to the RTC (onboard mc146818a).
246
247options CLK_USE_I8254_CALIBRATION
248options CLK_USE_TSC_CALIBRATION
249
250
251#####################################################################
252# MISCELLANEOUS DEVICES AND OPTIONS
253
254device speaker #Play IBM BASIC-style noises out your speaker
255hint.speaker.0.at="isa"
256hint.speaker.0.port="0x61"
257device gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT!
258device apm_saver # Requires APM
259
260
261#####################################################################
262# HARDWARE BUS CONFIGURATION
263
264#
265# ISA bus
266#
267device isa
268
269#
270# Options for `isa':
271#
272# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
273# interrupt controller. This saves about 0.7-1.25 usec for each interrupt.
274# This option breaks suspend/resume on some portables.
275#
276# AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A
277# interrupt controller. This saves about 0.7-1.25 usec for each interrupt.
278# Automatic EOI is documented not to work for for the slave with the
279# original i8259A, but it works for some clones and some integrated
280# versions.
281#
282# MAXMEM specifies the amount of RAM on the machine; if this is not
283# specified, FreeBSD will first read the amount of memory from the CMOS
284# RAM, so the amount of memory will initially be limited to 64MB or 16MB
285# depending on the BIOS. If the BIOS reports 64MB, a memory probe will
286# then attempt to detect the installed amount of RAM. If this probe
287# fails to detect >64MB RAM you will have to use the MAXMEM option.
288# The amount is in kilobytes, so for a machine with 128MB of RAM, it would
289# be 131072 (128 * 1024).
290#
291# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
292# reset the CPU for reboot. This is needed on some systems with broken
293# keyboard controllers.
294
295options COMPAT_OLDISA #Use ISA shims and glue for old drivers
296options AUTO_EOI_1
297#options AUTO_EOI_2
298
299options MAXMEM=(128*1024)
300#options BROKEN_KEYBOARD_RESET
301
302#
303# EISA bus
304#
305# The EISA bus device is `eisa'. It provides auto-detection and
306# configuration support for all devices on the EISA bus.
307
308device eisa
309
310# By default, only 10 EISA slots are probed, since the slot numbers
311# above clash with the configuration address space of the PCI subsystem,
312# and the EISA probe is not very smart about this. This is sufficient
313# for most machines, but in particular the HP NetServer LC series comes
314# with an onboard AIC7770 dual-channel SCSI controller on EISA slot #11,
315# thus you need to bump this figure to 12 for them.
316options EISA_SLOTS=12
317
318#
319# MCA bus:
320#
321# The MCA bus device is `mca'. It provides auto-detection and
322# configuration support for all devices on the MCA bus.
323# No hints are required for MCA.
324
325device mca
326
327#
328# PCI bus & PCI options:
329#
330device pci
331
332#
333# AGP GART support
334device agp
335
336
337#####################################################################
338# HARDWARE DEVICE CONFIGURATION
339
340#
341# Mandatory devices:
342#
343
344# The keyboard controller; it controls the keyboard and the PS/2 mouse.
345device atkbdc
346hint.atkbdc.0.at="isa"
347hint.atkbdc.0.port="0x060"
348
349# The AT keyboard
350device atkbd
351hint.atkbd.0.at="atkbdc"
352hint.atkbd.0.irq="1"
353
354# Options for atkbd:
355options ATKBD_DFLT_KEYMAP # specify the built-in keymap
356makeoptions ATKBD_DFLT_KEYMAP=jp.106
357
358# These options are valid for other keyboard drivers as well.
359options KBD_DISABLE_KEYMAP_LOAD # refuse to load a keymap
360options KBD_INSTALL_CDEV # install a CDEV entry in /dev
361
362# `flags' for atkbd:
363# 0x01 Force detection of keyboard, else we always assume a keyboard
364# 0x02 Don't reset keyboard, useful for some newer ThinkPads
365# 0x03 Force detection and avoid reset, might help with certain
366# dockingstations
367# 0x04 Old-style (XT) keyboard support, useful for older ThinkPads
368
369# PS/2 mouse
370device psm
371hint.psm.0.at="atkbdc"
372hint.psm.0.irq="12"
373
374# Options for psm:
375options PSM_HOOKRESUME #hook the system resume event, useful
376 #for some laptops
377options PSM_RESETAFTERSUSPEND #reset the device at the resume event
378
379# Video card driver for VGA adapters.
380device vga
381hint.vga.0.at="isa"
382
383# Options for vga:
384# Try the following option if the mouse pointer is not drawn correctly
385# or font does not seem to be loaded properly. May cause flicker on
386# some systems.
387options VGA_ALT_SEQACCESS
388
389# If you can dispense with some vga driver features, you may want to
390# use the following options to save some memory.
391#options VGA_NO_FONT_LOADING # don't save/load font
392#options VGA_NO_MODE_CHANGE # don't change video modes
393
394# Older video cards may require this option for proper operation.
395options VGA_SLOW_IOACCESS # do byte-wide i/o's to TS and GDC regs
396
397# The following option probably won't work with the LCD displays.
398options VGA_WIDTH90 # support 90 column modes
399
400# Yet more undocumented options for linting.
401options VGA_DEBUG
402
403# To include support for VGA VESA video modes
404options VESA
405
406# Turn on extra debugging checks and output for VESA support.
407options VESA_DEBUG
408
409# The pcvt console driver (vt220 compatible).
410device vt
411hint.vt.0.at="isa"
412options XSERVER # support for running an X server on vt
413options FAT_CURSOR # start with block cursor
414# This PCVT option is for keyboards such as those used on really old ThinkPads
415options PCVT_SCANSET=2
416# Other PCVT options are documented in pcvt(4).
417options PCVT_24LINESDEF
418options PCVT_CTRL_ALT_DEL
419options PCVT_META_ESC
420options PCVT_NSCREENS=9
421options PCVT_PRETTYSCRNS
422options PCVT_SCREENSAVER
423options PCVT_USEKBDSEC
424options PCVT_VT220KEYB
425options PCVT_GREENSAVER
426
427#
428# The Numeric Processing eXtension driver. In addition to this, you
429# may configure a math emulator (see above). If your machine has a
430# hardware FPU and the kernel configuration includes the npx device
431# *and* a math emulator compiled into the kernel, the hardware FPU
432# will be used, unless it is found to be broken or unless "flags" to
433# npx0 includes "0x08", which requests preference for the emulator.
434device npx
435hint.npx.0.flags="0x0"
436hint.npx.0.irq="13"
437
438#
439# `flags' for npx0:
440# 0x01 don't use the npx registers to optimize bcopy.
441# 0x02 don't use the npx registers to optimize bzero.
442# 0x04 don't use the npx registers to optimize copyin or copyout.
443# 0x08 use emulator even if hardware FPU is available.
444# The npx registers are normally used to optimize copying and zeroing when
445# all of the following conditions are satisfied:
446# I586_CPU is an option
447# the cpu is an i586 (perhaps not a Pentium)
448# the probe for npx0 succeeds
449# INT 16 exception handling works.
450# Then copying and zeroing using the npx registers is normally 30-100% faster.
451# The flags can be used to control cases where it doesn't work or is slower.
452# Setting them at boot time using userconfig works right (the optimizations
453# are not used until later in the bootstrap when npx0 is attached).
454# Flag 0x08 automatically disables the i586 optimized routines.
455#
456
457#
458# Optional devices:
459#
460
461# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create
462# the /dev/3dfx0 device to work with glide implementations. This should get
463# linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as
464# the tdfx DRI module from XFree86 and is completely unrelated.
465#
466# To enable Linuxulator support, one must also include COMPAT_LINUX in the
467# config as well, or you will not have the dependencies. The other option
468# is to load both as modules.
469
470device tdfx # Enable 3Dfx Voodoo support
471options TDFX_LINUX # Enable Linuxulator support
472
473#
474# ACPI support using the Intel ACPI Component Architecture reference
475# implementation.
476#
477# ACPI_DEBUG enables the use of the debug.acpi.level and debug.acpi.layer
478# kernel environment variables to select initial debugging levels for the
479# Intel ACPICA code. (Note that the Intel code must also have USE_DEBUGGER
480# defined when it is built).
481#
482# Note that building ACPI into the kernel is deprecated; the module is
483# normally loaded automatically by the loader.
484#
485device acpi
486options ACPI_DEBUG
487
488# DRM options:
489# gammadrm: 3Dlabs Oxygen GMX 2000
490# mgadrm: AGP Matrox G200, G400, G450, G550
491# tdfxdrm: 3dfx Voodoo 3/4/5 and Banshee
492# r128drm: AGP ATI Rage 128
493# radeondrm: AGP ATI Radeon, including 7200 and 7500
494# DRM_LINUX: include linux compatibility, requires COMPAT_LINUX
495# DRM_DEBUG: include debugging code, very slow
496#
497# mga, r128, and radeon require AGP in the kernel
498
499device gammadrm
500device mgadrm
501device "r128drm"
502device radeondrm
503device tdfxdrm
504
505options DRM_DEBUG
506options DRM_LINUX
507
508# M-systems DiskOnchip products see src/sys/contrib/dev/fla/README
509device fla
510hint.fla.0.at="isa"
511
512#
513# mse: Logitech and ATI InPort bus mouse ports
514
515device mse
516hint.mse.0.at="isa"
517hint.mse.0.port="0x23c"
518hint.mse.0.irq="5"
519
520#
521# Network interfaces:
522#
523
524# ar: Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
525# (requires sppp)
526# cx: Cronyx/Sigma multiport sync/async (with Cisco or PPP framing)
527# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
528# HP PC Lan+, various PC Card devices (refer to etc/defauls/pccard.conf)
529# (requires miibus)
530# el: 3Com 3C501 (slow!)
531# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
532# Intel EtherExpress
533# le: Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100,
534# DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422)
535# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and
536# Am79C960)
537# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133
538# (no hints needed).
539# Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140,
540# OC-3141, OC-3540, OC-3250
541# rdp: RealTek RTL 8002-based pocket ethernet adapters
542# sbni: Granch SBNI12-xx ISA and PCI adapters
543# sr: RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
544# wl: Lucent Wavelan (ISA card only).
545
546# Order for ISA/EISA devices is important here
547
548device ar
549hint.ar.0.at="isa"
550hint.ar.0.port="0x300"
551hint.ar.0.irq="10"
552hint.ar.0.maddr="0xd0000"
553device cx 1
554hint.cx.0.at="isa"
555hint.cx.0.port="0x240"
556hint.cx.0.irq="15"
557hint.cx.0.drq="7"
558device ed
559#options ED_NO_MIIBUS # Disable ed miibus support
560hint.ed.0.at="isa"
561hint.ed.0.port="0x280"
562hint.ed.0.irq="5"
563hint.ed.0.maddr="0xd8000"
564device el 1
565hint.el.0.at="isa"
566hint.el.0.port="0x300"
567hint.el.0.irq="9"
568device ie 2
569hint.ie.0.at="isa"
570hint.ie.0.port="0x300"
571hint.ie.0.irq="5"
572hint.ie.0.maddr="0xd0000"
573hint.ie.1.at="isa"
574hint.ie.1.port="0x360"
575hint.ie.1.irq="7"
576hint.ie.1.maddr="0xd0000"
577device le 1
578hint.le.0.at="isa"
579hint.le.0.port="0x300"
580hint.le.0.irq="5"
581hint.le.0.maddr="0xd0000"
582device lnc
583hint.lnc.0.at="isa"
584hint.lnc.0.port="0x280"
585hint.lnc.0.irq="10"
586hint.lnc.0.drq="0"
587device rdp 1
588hint.rdp.0.at="isa"
589hint.rdp.0.port="0x378"
590hint.rdp.0.irq="7"
591hint.rdp.0.flags="2"
592device sbni
593hint.sbni.0.at="isa"
594hint.sbni.0.port="0x210"
595hint.sbni.0.irq="0xefdead"
596hint.sbni.0.flags="0"
597device sr
598hint.sr.0.at="isa"
599hint.sr.0.port="0x300"
600hint.sr.0.irq="5"
601hint.sr.0.maddr="0xd0000"
602device oltr
603hint.oltr.0.at="isa"
604device wl
605hint.wl.0.at="isa"
606hint.wl.0.port="0x300"
607options WLCACHE # enables the signal-strength cache
608options WLDEBUG # enables verbose debugging output
609
610#
611# Audio drivers: `pca'
612#
613# pca: PCM audio through your PC speaker
614
615device pca
616hint.pca.0.at="isa"
617hint.pca.0.port="0x040"
618
344# To include support for VGA VESA video modes
345options VESA
346
347# Turn on extra debugging checks and output for VESA support.
348options VESA_DEBUG
349
350# The pcvt console driver (vt220 compatible).
351device vt
352hint.vt.0.at="isa"
353options XSERVER # support for running an X server on vt
354options FAT_CURSOR # start with block cursor
355# This PCVT option is for keyboards such as those used on really old ThinkPads
356options PCVT_SCANSET=2
357# Other PCVT options are documented in pcvt(4).
358options PCVT_24LINESDEF
359options PCVT_CTRL_ALT_DEL
360options PCVT_META_ESC
361options PCVT_NSCREENS=9
362options PCVT_PRETTYSCRNS
363options PCVT_SCREENSAVER
364options PCVT_USEKBDSEC
365options PCVT_VT220KEYB
366options PCVT_GREENSAVER
367
368#
369# The Numeric Processing eXtension driver. In addition to this, you
370# may configure a math emulator (see above). If your machine has a
371# hardware FPU and the kernel configuration includes the npx device
372# *and* a math emulator compiled into the kernel, the hardware FPU
373# will be used, unless it is found to be broken or unless "flags" to
374# npx0 includes "0x08", which requests preference for the emulator.
375device npx
376hint.npx.0.flags="0x0"
377hint.npx.0.irq="13"
378
379#
380# `flags' for npx0:
381# 0x01 don't use the npx registers to optimize bcopy.
382# 0x02 don't use the npx registers to optimize bzero.
383# 0x04 don't use the npx registers to optimize copyin or copyout.
384# 0x08 use emulator even if hardware FPU is available.
385# The npx registers are normally used to optimize copying and zeroing when
386# all of the following conditions are satisfied:
387# I586_CPU is an option
388# the cpu is an i586 (perhaps not a Pentium)
389# the probe for npx0 succeeds
390# INT 16 exception handling works.
391# Then copying and zeroing using the npx registers is normally 30-100% faster.
392# The flags can be used to control cases where it doesn't work or is slower.
393# Setting them at boot time using userconfig works right (the optimizations
394# are not used until later in the bootstrap when npx0 is attached).
395# Flag 0x08 automatically disables the i586 optimized routines.
396#
397
398#
399# Optional devices:
400#
401
402# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create
403# the /dev/3dfx0 device to work with glide implementations. This should get
404# linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as
405# the tdfx DRI module from XFree86 and is completely unrelated.
406#
407# To enable Linuxulator support, one must also include COMPAT_LINUX in the
408# config as well, or you will not have the dependencies. The other option
409# is to load both as modules.
410
411device tdfx # Enable 3Dfx Voodoo support
412options TDFX_LINUX # Enable Linuxulator support
413
414#
415# ACPI support using the Intel ACPI Component Architecture reference
416# implementation.
417#
418# ACPI_DEBUG enables the use of the debug.acpi.level and debug.acpi.layer
419# kernel environment variables to select initial debugging levels for the
420# Intel ACPICA code. (Note that the Intel code must also have USE_DEBUGGER
421# defined when it is built).
422#
423# Note that building ACPI into the kernel is deprecated; the module is
424# normally loaded automatically by the loader.
425#
426device acpi
427options ACPI_DEBUG
428
429# DRM options:
430# gammadrm: 3Dlabs Oxygen GMX 2000
431# mgadrm: AGP Matrox G200, G400, G450, G550
432# tdfxdrm: 3dfx Voodoo 3/4/5 and Banshee
433# r128drm: AGP ATI Rage 128
434# radeondrm: AGP ATI Radeon, including 7200 and 7500
435# DRM_LINUX: include linux compatibility, requires COMPAT_LINUX
436# DRM_DEBUG: include debugging code, very slow
437#
438# mga, r128, and radeon require AGP in the kernel
439
440device gammadrm
441device mgadrm
442device "r128drm"
443device radeondrm
444device tdfxdrm
445
446options DRM_DEBUG
447options DRM_LINUX
448
449# M-systems DiskOnchip products see src/sys/contrib/dev/fla/README
450device fla
451hint.fla.0.at="isa"
452
453#
454# mse: Logitech and ATI InPort bus mouse ports
455
456device mse
457hint.mse.0.at="isa"
458hint.mse.0.port="0x23c"
459hint.mse.0.irq="5"
460
461#
462# Network interfaces:
463#
464
465# ar: Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
466# (requires sppp)
467# cx: Cronyx/Sigma multiport sync/async (with Cisco or PPP framing)
468# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
469# HP PC Lan+, various PC Card devices (refer to etc/defauls/pccard.conf)
470# (requires miibus)
471# el: 3Com 3C501 (slow!)
472# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
473# Intel EtherExpress
474# le: Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100,
475# DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422)
476# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and
477# Am79C960)
478# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133
479# (no hints needed).
480# Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140,
481# OC-3141, OC-3540, OC-3250
482# rdp: RealTek RTL 8002-based pocket ethernet adapters
483# sbni: Granch SBNI12-xx ISA and PCI adapters
484# sr: RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
485# wl: Lucent Wavelan (ISA card only).
486
487# Order for ISA/EISA devices is important here
488
489device ar
490hint.ar.0.at="isa"
491hint.ar.0.port="0x300"
492hint.ar.0.irq="10"
493hint.ar.0.maddr="0xd0000"
494device cx 1
495hint.cx.0.at="isa"
496hint.cx.0.port="0x240"
497hint.cx.0.irq="15"
498hint.cx.0.drq="7"
499device ed
500#options ED_NO_MIIBUS # Disable ed miibus support
501hint.ed.0.at="isa"
502hint.ed.0.port="0x280"
503hint.ed.0.irq="5"
504hint.ed.0.maddr="0xd8000"
505device el 1
506hint.el.0.at="isa"
507hint.el.0.port="0x300"
508hint.el.0.irq="9"
509device ie 2
510hint.ie.0.at="isa"
511hint.ie.0.port="0x300"
512hint.ie.0.irq="5"
513hint.ie.0.maddr="0xd0000"
514hint.ie.1.at="isa"
515hint.ie.1.port="0x360"
516hint.ie.1.irq="7"
517hint.ie.1.maddr="0xd0000"
518device le 1
519hint.le.0.at="isa"
520hint.le.0.port="0x300"
521hint.le.0.irq="5"
522hint.le.0.maddr="0xd0000"
523device lnc
524hint.lnc.0.at="isa"
525hint.lnc.0.port="0x280"
526hint.lnc.0.irq="10"
527hint.lnc.0.drq="0"
528device rdp 1
529hint.rdp.0.at="isa"
530hint.rdp.0.port="0x378"
531hint.rdp.0.irq="7"
532hint.rdp.0.flags="2"
533device sbni
534hint.sbni.0.at="isa"
535hint.sbni.0.port="0x210"
536hint.sbni.0.irq="0xefdead"
537hint.sbni.0.flags="0"
538device sr
539hint.sr.0.at="isa"
540hint.sr.0.port="0x300"
541hint.sr.0.irq="5"
542hint.sr.0.maddr="0xd0000"
543device oltr
544hint.oltr.0.at="isa"
545device wl
546hint.wl.0.at="isa"
547hint.wl.0.port="0x300"
548options WLCACHE # enables the signal-strength cache
549options WLDEBUG # enables verbose debugging output
550
551#
552# Audio drivers: `pca'
553#
554# pca: PCM audio through your PC speaker
555
556device pca
557hint.pca.0.at="isa"
558hint.pca.0.port="0x040"
559
619# The 'asr' driver provides support for current DPT/Adaptec SCSI RAID
620# controllers (SmartRAID V and VI and later).
621# These controllers require the CAM infrastructure.
622#
623device asr
624
625# The 'dpt' driver provides support for old DPT controllers (http://www.dpt.com/).
626# These have hardware RAID-{0,1,5} support, and do multi-initiator I/O.
627# The DPT controllers are commonly re-licensed under other brand-names -
628# some controllers by Olivetti, Dec, HP, AT&T, SNI, AST, Alphatronic, NEC and
629# Compaq are actually DPT controllers.
630#
631# See src/sys/dev/dpt for debugging and other subtle options.
632# DPT_MEASURE_PERFORMANCE Enables a set of (semi)invasive metrics. Various
633# instruments are enabled. The tools in
634# /usr/sbin/dpt_* assume these to be enabled.
635# DPT_HANDLE_TIMEOUTS Normally device timeouts are handled by the DPT.
636# If you ant the driver to handle timeouts, enable
637# this option. If your system is very busy, this
638# option will create more trouble than solve.
639# DPT_TIMEOUT_FACTOR Used to compute the excessive amount of time to
640# wait when timing out with the above option.
641# DPT_DEBUG_xxxx These are controllable from sys/dev/dpt/dpt.h
642# DPT_LOST_IRQ When enabled, will try, once per second, to catch
643# any interrupt that got lost. Seems to help in some
644# DPT-firmware/Motherboard combinations. Minimal
645# cost, great benefit.
646# DPT_RESET_HBA Make "reset" actually reset the controller
647# instead of fudging it. Only enable this if you
648# are 100% certain you need it.
649
650device dpt
651
652# DPT options
653#!CAM# options DPT_MEASURE_PERFORMANCE
654#!CAM# options DPT_HANDLE_TIMEOUTS
655options DPT_TIMEOUT_FACTOR=4
656options DPT_LOST_IRQ
657options DPT_RESET_HBA
658options DPT_ALLOW_MEMIO
659
660#
661# Compaq "CISS" RAID controllers (SmartRAID 5* series)
662# These controllers have a SCSI-like interface, and require the
663# CAM infrastructure.
664#
665device ciss
666
667#
668# Intel Integrated RAID controllers.
669# This driver was developed and is maintained by Intel. Contacts
670# at Intel for this driver are
671# "Kannanthanam, Boji T" <boji.t.kannanthanam@intel.com> and
672# "Leubner, Achim" <achim.leubner@intel.com>.
673#
674device iir
675
676#
677# Mylex AcceleRAID and eXtremeRAID controllers with v6 and later
678# firmware. These controllers have a SCSI-like interface, and require
679# the CAM infrastructure.
680#
681device mly
682
683#
684# Compaq Smart RAID, Mylex DAC960 and AMI MegaRAID controllers. Only
685# one entry is needed; the code will find and configure all supported
686# controllers.
687#
688device ida # Compaq Smart RAID
689device mlx # Mylex DAC960
690device amr # AMI MegaRAID
691
692#
693# 3ware ATA RAID
694#
695device twe # 3ware ATA RAID
696
697#
698# ATA raid adapters
699#
700device pst
701
702#
703# SCSI host adapters:
704#
560#
561# SCSI host adapters:
562#
705# aha: Adaptec 154x/1535/1640
706# bt: Most Buslogic controllers: including BT-445, BT-54x, BT-64x, BT-74x,
707# BT-75x, BT-946, BT-948, BT-956, BT-958, SDC3211B, SDC3211F, SDC3222F
708# ncv: NCR 53C500 based SCSI host adapters.
709# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
710# stg: TMC 18C30, 18C50 based SCSI host adapters.
563# ncv: NCR 53C500 based SCSI host adapters.
564# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
565# stg: TMC 18C30, 18C50 based SCSI host adapters.
711# wds: WD7000
712#
713# Note that the order is important in order for Buslogic ISA/EISA cards to be
714# probed correctly.
715#
716device bt
717hint.bt.0.at="isa"
718hint.bt.0.port="0x330"
719device aha
720hint.aha.0.at="isa"
721device wds
722hint.wds.0.at="isa"
723hint.wds.0.port="0x350"
724hint.wds.0.irq="11"
725hint.wds.0.drq="6"
566
726device ncv
727device nsp
728device stg
729hint.stg.0.at="isa"
730hint.stg.0.port="0x140"
731hint.stg.0.port="11"
732
733#
734# Adaptec FSA RAID controllers, including integrated DELL controllers,
735# the Dell PERC 2/QC and the HP NetRAID-4M
736device aac
737device aacp # SCSI Passthrough interface (optional, CAM required)
738
739#
740# Miscellaneous hardware:
741#
742# wt: Wangtek and Archive QIC-02/QIC-36 tape drives
743# ctx: Cortex-I frame grabber
744# apm: Laptop Advanced Power Management (experimental)
745# pmtimer: Timer device driver for power management events (APM or ACPI)
746# spigot: The Creative Labs Video Spigot video-acquisition board
747# dgb: Digiboard PC/Xi and PC/Xe series driver (ALPHA QUALITY!)
748# digi: Digiboard driver
749# gp: National Instruments AT-GPIB and AT-GPIB/TNT board, PCMCIA-GPIB
750# asc: GI1904-based hand scanners, e.g. the Trust Amiscan Grey
751# gsc: Genius GS-4500 hand scanner.
752# tw: TW-523 power line interface for use with X-10 home control products
753# spic: Sony Programmable I/O controller (VAIO notebooks)
754# stl: Stallion EasyIO and EasyConnection 8/32 (cd1400 based)
755# stli: Stallion EasyConnection 8/64, ONboard, Brumby (intelligent)
756
757# Notes on APM
758# The flags takes the following meaning for apm0:
759# 0x0020 Statclock is broken.
760# If apm is omitted, some systems require sysctl kern.timecounter.method=1
761# for correct timekeeping.
762
763# Notes on the spigot:
764# The video spigot is at 0xad6. This port address can not be changed.
765# The irq values may only be 10, 11, or 15
766# I/O memory is an 8kb region. Possible values are:
767# 0a0000, 0a2000, ..., 0fffff, f00000, f02000, ..., ffffff
768# The start address must be on an even boundary.
769# Add the following option if you want to allow non-root users to be able
770# to access the spigot. This option is not secure because it allows users
771# direct access to the I/O page.
772# options SPIGOT_UNSECURE
773
774# Notes on the Specialix SI/XIO driver:
775# The host card is memory, not IO mapped.
776# The Rev 1 host cards use a 64K chunk, on a 32K boundary.
777# The Rev 2 host cards use a 32K chunk, on a 32K boundary.
778# The cards can use an IRQ of 11, 12 or 15.
779
780# Notes on the Sony Programmable I/O controller
781# This is a temporary driver that should someday be replaced by something
782# that hooks into the ACPI layer. The device is hooked to the PIIX4's
783# General Device 10 decoder, which means you have to fiddle with PCI
784# registers to map it in, even though it is otherwise treated here as
785# an ISA device. At the moment, the driver polls, although the device
786# is capable of generating interrupts. It largely undocumented.
787# The port location in the hint is where you WANT the device to be
788# mapped. 0x10a0 seems to be traditional. At the moment the jogdial
789# is the only thing truly supported, but aparently a fair percentage
790# of the Vaio extra features are controlled by this device.
791
792# Notes on the Stallion stl and stli drivers:
793# See src/i386/isa/README.stl for complete instructions.
794# This is version 0.0.5alpha, unsupported by Stallion.
795# The stl driver has a secondary IO port hard coded at 0x280. You need
796# to change src/i386/isa/stallion.c if you reconfigure this on the boards.
797# The "flags" and "msize" settings on the stli driver depend on the board:
798# EasyConnection 8/64 ISA: flags 23 msize 0x1000
799# EasyConnection 8/64 EISA: flags 24 msize 0x10000
800# EasyConnection 8/64 MCA: flags 25 msize 0x1000
801# ONboard ISA: flags 4 msize 0x10000
802# ONboard EISA: flags 7 msize 0x10000
803# ONboard MCA: flags 3 msize 0x10000
804# Brumby: flags 2 msize 0x4000
805# Stallion: flags 1 msize 0x10000
806
807# Notes on the Digiboard PC/Xi and PC/Xe series driver
808#
809# The NDGBPORTS option specifies the number of ports controlled by the
810# dgb(4) driver. The default value is 16 ports per device.
811#
812# The following flag values have special meanings in dgb:
813# 0x01 - alternate layout of pins
814# 0x02 - use the windowed PC/Xe in 64K mode
815
816device wt 1
817hint.wt.0.at="isa"
818hint.wt.0.port="0x300"
819hint.wt.0.irq="5"
820hint.wt.0.drq="1"
821device ctx 1
822hint.ctx.0.at="isa"
823hint.ctx.0.port="0x230"
824hint.ctx.0.maddr="0xd0000"
825device spigot 1
826hint.spigot.0.at="isa"
827hint.spigot.0.port="0xad6"
828hint.spigot.0.irq="15"
829hint.spigot.0.maddr="0xee000"
830device apm
831hint.apm.0.flags="0x20"
832device pmtimer # Adjust system timer at wakeup time
833device gp
834hint.gp.0.at="isa"
835hint.gp.0.port="0x2c0"
836device gsc 1
837hint.gsc.0.at="isa"
838hint.gsc.0.port="0x270"
839hint.gsc.0.drq="3"
840device dgb 1
841options NDGBPORTS=17
842hint.dgb.0.at="isa"
843hint.dgb.0.port="0x220"
844hint.dgb.0.maddr="0xfc000"
845device digi
846hint.digi.0.at="isa"
847hint.digi.0.port="0x104"
848hint.digi.0.maddr="0xd0000"
849# BIOS & FEP/OS components of device digi.
850device digi_CX
851device digi_CX_PCI
852device digi_EPCX
853device digi_EPCX_PCI
854device digi_Xe
855device digi_Xem
856device digi_Xr
857# the port and irq for tw0 are fictitious
858device tw 1
859hint.tw.0.at="isa"
860hint.tw.0.port="0x380"
861hint.tw.0.irq="11"
862device asc 1
863hint.asc.0.at="isa"
864hint.asc.0.port="0x3EB"
865hint.asc.0.drq="3"
866hint.asc.0.irq="10"
867device spic
868hint.spic.0.at="isa"
869hint.spic.0.port="0x10a0"
870device stl
871hint.stl.0.at="isa"
872hint.stl.0.port="0x2a0"
873hint.stl.0.irq="10"
874device stli
875hint.stli.0.at="isa"
876hint.stli.0.port="0x2a0"
877hint.stli.0.maddr="0xcc000"
878hint.stli.0.flags="23"
879hint.stli.0.msize="0x1000"
880# You are unlikely to have the hardware for loran <phk@FreeBSD.org>
881device loran
882hint.loran.0.at="isa"
883hint.loran.0.irq="5"
884# HOT1 Xilinx 6200 card (http://www.vcc.com/)
885device xrpu
886
887#
888# Laptop/Notebook options:
889#
890# See also:
891# apm under `Miscellaneous hardware'
892# above.
893
894# For older notebooks that signal a powerfail condition (external
895# power supply dropped, or battery state low) by issuing an NMI:
896
897options POWERFAIL_NMI # make it beep instead of panicing
898
899#
567device ncv
568device nsp
569device stg
570hint.stg.0.at="isa"
571hint.stg.0.port="0x140"
572hint.stg.0.port="11"
573
574#
575# Adaptec FSA RAID controllers, including integrated DELL controllers,
576# the Dell PERC 2/QC and the HP NetRAID-4M
577device aac
578device aacp # SCSI Passthrough interface (optional, CAM required)
579
580#
581# Miscellaneous hardware:
582#
583# wt: Wangtek and Archive QIC-02/QIC-36 tape drives
584# ctx: Cortex-I frame grabber
585# apm: Laptop Advanced Power Management (experimental)
586# pmtimer: Timer device driver for power management events (APM or ACPI)
587# spigot: The Creative Labs Video Spigot video-acquisition board
588# dgb: Digiboard PC/Xi and PC/Xe series driver (ALPHA QUALITY!)
589# digi: Digiboard driver
590# gp: National Instruments AT-GPIB and AT-GPIB/TNT board, PCMCIA-GPIB
591# asc: GI1904-based hand scanners, e.g. the Trust Amiscan Grey
592# gsc: Genius GS-4500 hand scanner.
593# tw: TW-523 power line interface for use with X-10 home control products
594# spic: Sony Programmable I/O controller (VAIO notebooks)
595# stl: Stallion EasyIO and EasyConnection 8/32 (cd1400 based)
596# stli: Stallion EasyConnection 8/64, ONboard, Brumby (intelligent)
597
598# Notes on APM
599# The flags takes the following meaning for apm0:
600# 0x0020 Statclock is broken.
601# If apm is omitted, some systems require sysctl kern.timecounter.method=1
602# for correct timekeeping.
603
604# Notes on the spigot:
605# The video spigot is at 0xad6. This port address can not be changed.
606# The irq values may only be 10, 11, or 15
607# I/O memory is an 8kb region. Possible values are:
608# 0a0000, 0a2000, ..., 0fffff, f00000, f02000, ..., ffffff
609# The start address must be on an even boundary.
610# Add the following option if you want to allow non-root users to be able
611# to access the spigot. This option is not secure because it allows users
612# direct access to the I/O page.
613# options SPIGOT_UNSECURE
614
615# Notes on the Specialix SI/XIO driver:
616# The host card is memory, not IO mapped.
617# The Rev 1 host cards use a 64K chunk, on a 32K boundary.
618# The Rev 2 host cards use a 32K chunk, on a 32K boundary.
619# The cards can use an IRQ of 11, 12 or 15.
620
621# Notes on the Sony Programmable I/O controller
622# This is a temporary driver that should someday be replaced by something
623# that hooks into the ACPI layer. The device is hooked to the PIIX4's
624# General Device 10 decoder, which means you have to fiddle with PCI
625# registers to map it in, even though it is otherwise treated here as
626# an ISA device. At the moment, the driver polls, although the device
627# is capable of generating interrupts. It largely undocumented.
628# The port location in the hint is where you WANT the device to be
629# mapped. 0x10a0 seems to be traditional. At the moment the jogdial
630# is the only thing truly supported, but aparently a fair percentage
631# of the Vaio extra features are controlled by this device.
632
633# Notes on the Stallion stl and stli drivers:
634# See src/i386/isa/README.stl for complete instructions.
635# This is version 0.0.5alpha, unsupported by Stallion.
636# The stl driver has a secondary IO port hard coded at 0x280. You need
637# to change src/i386/isa/stallion.c if you reconfigure this on the boards.
638# The "flags" and "msize" settings on the stli driver depend on the board:
639# EasyConnection 8/64 ISA: flags 23 msize 0x1000
640# EasyConnection 8/64 EISA: flags 24 msize 0x10000
641# EasyConnection 8/64 MCA: flags 25 msize 0x1000
642# ONboard ISA: flags 4 msize 0x10000
643# ONboard EISA: flags 7 msize 0x10000
644# ONboard MCA: flags 3 msize 0x10000
645# Brumby: flags 2 msize 0x4000
646# Stallion: flags 1 msize 0x10000
647
648# Notes on the Digiboard PC/Xi and PC/Xe series driver
649#
650# The NDGBPORTS option specifies the number of ports controlled by the
651# dgb(4) driver. The default value is 16 ports per device.
652#
653# The following flag values have special meanings in dgb:
654# 0x01 - alternate layout of pins
655# 0x02 - use the windowed PC/Xe in 64K mode
656
657device wt 1
658hint.wt.0.at="isa"
659hint.wt.0.port="0x300"
660hint.wt.0.irq="5"
661hint.wt.0.drq="1"
662device ctx 1
663hint.ctx.0.at="isa"
664hint.ctx.0.port="0x230"
665hint.ctx.0.maddr="0xd0000"
666device spigot 1
667hint.spigot.0.at="isa"
668hint.spigot.0.port="0xad6"
669hint.spigot.0.irq="15"
670hint.spigot.0.maddr="0xee000"
671device apm
672hint.apm.0.flags="0x20"
673device pmtimer # Adjust system timer at wakeup time
674device gp
675hint.gp.0.at="isa"
676hint.gp.0.port="0x2c0"
677device gsc 1
678hint.gsc.0.at="isa"
679hint.gsc.0.port="0x270"
680hint.gsc.0.drq="3"
681device dgb 1
682options NDGBPORTS=17
683hint.dgb.0.at="isa"
684hint.dgb.0.port="0x220"
685hint.dgb.0.maddr="0xfc000"
686device digi
687hint.digi.0.at="isa"
688hint.digi.0.port="0x104"
689hint.digi.0.maddr="0xd0000"
690# BIOS & FEP/OS components of device digi.
691device digi_CX
692device digi_CX_PCI
693device digi_EPCX
694device digi_EPCX_PCI
695device digi_Xe
696device digi_Xem
697device digi_Xr
698# the port and irq for tw0 are fictitious
699device tw 1
700hint.tw.0.at="isa"
701hint.tw.0.port="0x380"
702hint.tw.0.irq="11"
703device asc 1
704hint.asc.0.at="isa"
705hint.asc.0.port="0x3EB"
706hint.asc.0.drq="3"
707hint.asc.0.irq="10"
708device spic
709hint.spic.0.at="isa"
710hint.spic.0.port="0x10a0"
711device stl
712hint.stl.0.at="isa"
713hint.stl.0.port="0x2a0"
714hint.stl.0.irq="10"
715device stli
716hint.stli.0.at="isa"
717hint.stli.0.port="0x2a0"
718hint.stli.0.maddr="0xcc000"
719hint.stli.0.flags="23"
720hint.stli.0.msize="0x1000"
721# You are unlikely to have the hardware for loran <phk@FreeBSD.org>
722device loran
723hint.loran.0.at="isa"
724hint.loran.0.irq="5"
725# HOT1 Xilinx 6200 card (http://www.vcc.com/)
726device xrpu
727
728#
729# Laptop/Notebook options:
730#
731# See also:
732# apm under `Miscellaneous hardware'
733# above.
734
735# For older notebooks that signal a powerfail condition (external
736# power supply dropped, or battery state low) by issuing an NMI:
737
738options POWERFAIL_NMI # make it beep instead of panicing
739
740#
900# PC Card/PCMCIA
901# (OLDCARD)
902#
903# card: pccard slots
904# pcic: isa/pccard bridge
905#device pcic
906#hint.pcic.0.at="isa"
907#hint.pcic.1.at="isa"
908#device card 1
909
910#
911# PC Card/PCMCIA and Cardbus
912# (NEWCARD)
913#
914# Note that NEWCARD and OLDCARD are incompatible. Do not use both at the same
915# time.
916#
917# pccbb: pci/cardbus bridge implementing YENTA interface
918# pccard: pccard slots
919# cardbus: cardbus slots
920device cbb
921device pccard
922device cardbus
923#device pcic ISA attachment currently busted
924#hint.pcic.0.at="isa"
925#hint.pcic.1.at="isa"
926
927#
928# I2C Bus
929#
930# Philips i2c bus support is provided by the `iicbus' device.
931#
932# Supported interfaces:
933# pcf Philips PCF8584 ISA-bus controller
934#
935device pcf
936hint.pcf.0.at="isa"
937hint.pcf.0.port="0x320"
938hint.pcf.0.irq="5"
939
940#---------------------------------------------------------------------------
941# ISDN4BSD
942#
943# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
944#
945# i4b passive ISDN cards support contains the following hardware drivers:
946#
947# isic - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
948# iwic - Winbond W6692 PCI bus ISDN S/T interface controller
949# ifpi - AVM Fritz!Card PCI driver
950# ifpi2 - AVM Fritz!Card PCI version 2 driver
951# ihfc - Cologne Chip HFC ISA/ISA-PnP chipset driver
952# ifpnp - AVM Fritz!Card PnP driver
953# itjc - Siemens ISAC / TJNet Tiger300/320 chipset
954#
955# i4b active ISDN cards support contains the following hardware drivers:
956#
957# iavc - AVM B1 PCI, AVM B1 ISA, AVM T1
958#
959# Note that the ``options'' (if given) and ``device'' lines must BOTH
960# be uncommented to enable support for a given card !
961#
962# In addition to a hardware driver (and probably an option) the mandatory
963# ISDN protocol stack devices and the mandatory support device must be
964# enabled as well as one or more devices from the optional devices section.
965#
966#---------------------------------------------------------------------------
967# isic driver (Siemens/Infineon chipsets)
968#
969device isic
970#
971# ISA bus non-PnP Cards:
972# ----------------------
973#
974# Teles S0/8 or Niccy 1008
975options TEL_S0_8
976hint.isic.0.at="isa"
977hint.isic.0.maddr="0xd0000"
978hint.isic.0.irq="5"
979hint.isic.0.flags="1"
980#
981# Teles S0/16 or Creatix ISDN-S0 or Niccy 1016
982options TEL_S0_16
983hint.isic.0.at="isa"
984hint.isic.0.port="0xd80"
985hint.isic.0.maddr="0xd0000"
986hint.isic.0.irq="5"
987hint.isic.0.flags="2"
988#
989# Teles S0/16.3
990options TEL_S0_16_3
991hint.isic.0.at="isa"
992hint.isic.0.port="0xd80"
993hint.isic.0.irq="5"
994hint.isic.0.flags="3"
995#
996# AVM A1 or AVM Fritz!Card
997options AVM_A1
998hint.isic.0.at="isa"
999hint.isic.0.port="0x340"
1000hint.isic.0.irq="5"
1001hint.isic.0.flags="4"
1002#
1003# USRobotics Sportster ISDN TA intern
1004options USR_STI
1005hint.isic.0.at="isa"
1006hint.isic.0.port="0x268"
1007hint.isic.0.irq="5"
1008hint.isic.0.flags="7"
1009#
1010# ITK ix1 Micro ( < V.3, non-PnP version )
1011options ITKIX1
1012hint.isic.0.at="isa"
1013hint.isic.0.port="0x398"
1014hint.isic.0.irq="10"
1015hint.isic.0.flags="18"
1016#
1017# ELSA PCC-16
1018options ELSA_PCC16
1019hint.isic.0.at="isa"
1020hint.isic.0.port="0x360"
1021hint.isic.0.irq="10"
1022hint.isic.0.flags="20"
1023#
1024# ISA bus PnP Cards:
1025# ------------------
1026#
1027# Teles S0/16.3 PnP
1028options TEL_S0_16_3_P
1029#
1030# Creatix ISDN-S0 P&P
1031options CRTX_S0_P
1032#
1033# Dr. Neuhaus Niccy Go@
1034options DRN_NGO
1035#
1036# Sedlbauer Win Speed
1037options SEDLBAUER
1038#
1039# Dynalink IS64PH
1040options DYNALINK
1041#
1042# ELSA QuickStep 1000pro ISA
1043options ELSA_QS1ISA
1044#
1045# Siemens I-Surf 2.0
1046options SIEMENS_ISURF2
1047#
1048# Asuscom ISDNlink 128K ISA
1049options ASUSCOM_IPAC
1050#
1051# Eicon Diehl DIVA 2.0 and 2.02
1052options EICON_DIVA
1053#
1054# Compaq Microcom 610 ISDN card (Compaq series PSB2222I)
1055options COMPAQ_M610
1056#
1057# PCI bus Cards:
1058# --------------
1059#
1060# Cyclades Cyclom-Y PCI serial driver
1061device cy 1
1062options CY_PCI_FASTINTR # Use with cy_pci unless irq is shared
1063hint.cy.0.at="isa"
1064hint.cy.0.irq="10"
1065hint.cy.0.maddr="0xd4000"
1066hint.cy.0.msize="0x2000"
1067#
1068#---------------------------------------------------------------------------
1069# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
1070options ELSA_QS1PCI
1071#
1072#
1073#---------------------------------------------------------------------------
1074# ifpnp driver for AVM Fritz!Card PnP
1075#
1076# AVM Fritz!Card PnP
1077device ifpnp
1078#
1079#---------------------------------------------------------------------------
1080# ihfc driver for Cologne Chip ISA chipsets (experimental!)
1081#
1082# Teles 16.3c ISA PnP
1083# AcerISDN P10 ISA PnP
1084# TELEINT ISDN SPEED No.1
1085device ihfc
1086#
1087#---------------------------------------------------------------------------
1088# ifpi driver for AVM Fritz!Card PCI
1089#
1090# AVM Fritz!Card PCI
1091device ifpi
1092#
1093#---------------------------------------------------------------------------
1094# ifpi2 driver for AVM Fritz!Card PCI version 2
1095#
1096# AVM Fritz!Card PCI version 2
1097device "ifpi2"
1098#
1099#---------------------------------------------------------------------------
1100# iwic driver for Winbond W6692 chipset
1101#
1102# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
1103device iwic
1104#
1105#---------------------------------------------------------------------------
1106# itjc driver for Simens ISAC / TJNet Tiger300/320 chipset
1107#
1108# Traverse Technologies NETjet-S
1109# Teles PCI-TJ
1110device itjc
1111#
1112#---------------------------------------------------------------------------
1113# iavc driver (AVM active cards, needs i4bcapi driver!)
1114#
1115device iavc
1116#
1117# AVM B1 ISA bus (PnP mode not supported!)
1118# ----------------------------------------
1119hint.iavc.0.at="isa"
1120hint.iavc.0.port="0x150"
1121hint.iavc.0.irq="5"
1122#
1123#---------------------------------------------------------------------------
1124# ISDN Protocol Stack - mandatory for all hardware drivers
1125#
1126# Q.921 / layer 2 - i4b passive cards D channel handling
1127device "i4bq921"
1128#
1129# Q.931 / layer 3 - i4b passive cards D channel handling
1130device "i4bq931"
1131#
1132# layer 4 - i4b common passive and active card handling
1133device "i4b"
1134#
1135#---------------------------------------------------------------------------
1136# ISDN devices - mandatory for all hardware drivers
1137#
1138# userland driver to do ISDN tracing (for passive cards only)
1139device "i4btrc" 4
1140#
1141# userland driver to control the whole thing
1142device "i4bctl"
1143#
1144#---------------------------------------------------------------------------
1145# ISDN devices - optional
1146#
1147# userland driver for access to raw B channel
1148device "i4brbch" 4
1149#
1150# userland driver for telephony
1151device "i4btel" 2
1152#
1153# network driver for IP over raw HDLC ISDN
1154device "i4bipr" 4
1155# enable VJ header compression detection for ipr i/f
1156options IPR_VJ
1157# enable logging of the first n IP packets to isdnd (n=32 here)
1158options IPR_LOG=32
1159#
1160# network driver for sync PPP over ISDN; requires an equivalent
1161# number of sppp device to be configured
1162device "i4bisppp" 4
1163#
1164# B-channel interface to the netgraph subsystem
1165device "i4bing" 2
1166#
1167# CAPI driver needed for active ISDN cards (see iavc driver above)
1168device "i4bcapi"
1169#
1170#---------------------------------------------------------------------------
1171
1172#
1173# Set the number of PV entries per process. Increasing this can
1174# stop panics related to heavy use of shared memory. However, that can
1175# (combined with large amounts of physical memory) cause panics at
1176# boot time due the kernel running out of VM space.
1177#
1178# If you're tweaking this, you might also want to increase the sysctls
1179# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
1180#
1181# The value below is the one more than the default.
1182#
1183options PMAP_SHPGPERPROC=201
1184
1185#
1186# Change the size of the kernel virtual address space. Due to
1187# constraints in loader(8) on i386, this must be a multiple of 4.
1188# 256 = 1 GB of kernel address space. Increasing this also causes
1189# a reduction of the address space in user processes. 512 splits
1190# the 4GB cpu address space in half (2GB user, 2GB kernel).
1191#
1192options KVA_PAGES=260
1193
1194
1195#####################################################################
1196# ABI Emulation
1197
1198# Enable iBCS2 runtime support for SCO and ISC binaries
1199options IBCS2
1200
1201# Emulate spx device for client side of SVR3 local X interface
1202options SPX_HACK
1203
1204# Enable Linux ABI emulation
1205options COMPAT_LINUX
1206
1207# Enable i386 a.out binary support
1208options COMPAT_AOUT
1209
1210# Enable the linux-like proc filesystem support (requires COMPAT_LINUX
1211# and PSEUDOFS)
1212options LINPROCFS
1213
1214#
1215# SysVR4 ABI emulation
1216#
1217# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
1218# a KLD module.
1219# The STREAMS network emulation code can also be compiled statically or as a
1220# module. If loaded as a module, it must be loaded before the svr4 module
1221# (the /usr/sbin/svr4 script does this for you). If compiling statically,
1222# the `streams' device must be configured into any kernel which also
1223# specifies COMPAT_SVR4. It is possible to have a statically-configured
1224# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4
1225# script understands that it doesn't need to load the `streams' module under
1226# those circumstances.
1227# Caveat: At this time, `options KTRACE' is required for the svr4 emulator
1228# (whether static or dynamic).
1229#
1230options COMPAT_SVR4 # build emulator statically
1231options DEBUG_SVR4 # enable verbose debugging
1232device streams # STREAMS network driver (required for svr4).
1233
1234
1235#####################################################################
1236# VM OPTIONS
1237
1238# Disable the 4 MByte page PSE CPU feature. The PSE feature allows the
1239# kernel to use a 4 MByte pages to map the kernel instead of 4k pages.
1240# This saves on the amount of memory needed for page tables needed to
1241# map the kernel. You should only disable this feature as a temporary
1242# workaround if you are having problems with it enabled.
1243#
1244#options DISABLE_PSE
1245
1246# Disable the global pages PGE CPU feature. The PGE feature allows pages
1247# to be marked with the PG_G bit. TLB entries for these pages are not
1248# flushed from the cache when %cr3 is reloaded. This can make context
1249# switches less expensive. You should only disable this feature as a
1250# temporary workaround if you are having problems with it enabled.
1251#
1252#options DISABLE_PG_G
1253
1254# KSTACK_PAGES is the number of memory pages to assign to the kernel
1255# stack of each thread.
1256
1257options KSTACK_PAGES=3
1258
1259#####################################################################
1260
1261# More undocumented options for linting.
1262# Note that documenting these are not considered an affront.
1263
1264options FB_INSTALL_CDEV # install a CDEV entry in /dev
1265
1266# PECOFF module (Win32 Execution Format)
1267options PECOFF_SUPPORT
1268options PECOFF_DEBUG
1269
1270options ENABLE_ALART
1271options I4B_SMP_WORKAROUND
1272options I586_PMC_GUPROF=0x70000
1273options KBDIO_DEBUG=2
1274options KBD_MAXRETRY=4
1275options KBD_MAXWAIT=6
1276options KBD_RESETDELAY=201
1277
1278options PSM_DEBUG=1
1279
1280options TIMER_FREQ=((14318182+6)/12)
1281
1282options VM_KMEM_SIZE
1283options VM_KMEM_SIZE_MAX
1284options VM_KMEM_SIZE_SCALE
1285
1286# Yet more undocumented options for linting.
1287options COMPAT_SUNOS
741# I2C Bus
742#
743# Philips i2c bus support is provided by the `iicbus' device.
744#
745# Supported interfaces:
746# pcf Philips PCF8584 ISA-bus controller
747#
748device pcf
749hint.pcf.0.at="isa"
750hint.pcf.0.port="0x320"
751hint.pcf.0.irq="5"
752
753#---------------------------------------------------------------------------
754# ISDN4BSD
755#
756# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
757#
758# i4b passive ISDN cards support contains the following hardware drivers:
759#
760# isic - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
761# iwic - Winbond W6692 PCI bus ISDN S/T interface controller
762# ifpi - AVM Fritz!Card PCI driver
763# ifpi2 - AVM Fritz!Card PCI version 2 driver
764# ihfc - Cologne Chip HFC ISA/ISA-PnP chipset driver
765# ifpnp - AVM Fritz!Card PnP driver
766# itjc - Siemens ISAC / TJNet Tiger300/320 chipset
767#
768# i4b active ISDN cards support contains the following hardware drivers:
769#
770# iavc - AVM B1 PCI, AVM B1 ISA, AVM T1
771#
772# Note that the ``options'' (if given) and ``device'' lines must BOTH
773# be uncommented to enable support for a given card !
774#
775# In addition to a hardware driver (and probably an option) the mandatory
776# ISDN protocol stack devices and the mandatory support device must be
777# enabled as well as one or more devices from the optional devices section.
778#
779#---------------------------------------------------------------------------
780# isic driver (Siemens/Infineon chipsets)
781#
782device isic
783#
784# ISA bus non-PnP Cards:
785# ----------------------
786#
787# Teles S0/8 or Niccy 1008
788options TEL_S0_8
789hint.isic.0.at="isa"
790hint.isic.0.maddr="0xd0000"
791hint.isic.0.irq="5"
792hint.isic.0.flags="1"
793#
794# Teles S0/16 or Creatix ISDN-S0 or Niccy 1016
795options TEL_S0_16
796hint.isic.0.at="isa"
797hint.isic.0.port="0xd80"
798hint.isic.0.maddr="0xd0000"
799hint.isic.0.irq="5"
800hint.isic.0.flags="2"
801#
802# Teles S0/16.3
803options TEL_S0_16_3
804hint.isic.0.at="isa"
805hint.isic.0.port="0xd80"
806hint.isic.0.irq="5"
807hint.isic.0.flags="3"
808#
809# AVM A1 or AVM Fritz!Card
810options AVM_A1
811hint.isic.0.at="isa"
812hint.isic.0.port="0x340"
813hint.isic.0.irq="5"
814hint.isic.0.flags="4"
815#
816# USRobotics Sportster ISDN TA intern
817options USR_STI
818hint.isic.0.at="isa"
819hint.isic.0.port="0x268"
820hint.isic.0.irq="5"
821hint.isic.0.flags="7"
822#
823# ITK ix1 Micro ( < V.3, non-PnP version )
824options ITKIX1
825hint.isic.0.at="isa"
826hint.isic.0.port="0x398"
827hint.isic.0.irq="10"
828hint.isic.0.flags="18"
829#
830# ELSA PCC-16
831options ELSA_PCC16
832hint.isic.0.at="isa"
833hint.isic.0.port="0x360"
834hint.isic.0.irq="10"
835hint.isic.0.flags="20"
836#
837# ISA bus PnP Cards:
838# ------------------
839#
840# Teles S0/16.3 PnP
841options TEL_S0_16_3_P
842#
843# Creatix ISDN-S0 P&P
844options CRTX_S0_P
845#
846# Dr. Neuhaus Niccy Go@
847options DRN_NGO
848#
849# Sedlbauer Win Speed
850options SEDLBAUER
851#
852# Dynalink IS64PH
853options DYNALINK
854#
855# ELSA QuickStep 1000pro ISA
856options ELSA_QS1ISA
857#
858# Siemens I-Surf 2.0
859options SIEMENS_ISURF2
860#
861# Asuscom ISDNlink 128K ISA
862options ASUSCOM_IPAC
863#
864# Eicon Diehl DIVA 2.0 and 2.02
865options EICON_DIVA
866#
867# Compaq Microcom 610 ISDN card (Compaq series PSB2222I)
868options COMPAQ_M610
869#
870# PCI bus Cards:
871# --------------
872#
873# Cyclades Cyclom-Y PCI serial driver
874device cy 1
875options CY_PCI_FASTINTR # Use with cy_pci unless irq is shared
876hint.cy.0.at="isa"
877hint.cy.0.irq="10"
878hint.cy.0.maddr="0xd4000"
879hint.cy.0.msize="0x2000"
880#
881#---------------------------------------------------------------------------
882# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
883options ELSA_QS1PCI
884#
885#
886#---------------------------------------------------------------------------
887# ifpnp driver for AVM Fritz!Card PnP
888#
889# AVM Fritz!Card PnP
890device ifpnp
891#
892#---------------------------------------------------------------------------
893# ihfc driver for Cologne Chip ISA chipsets (experimental!)
894#
895# Teles 16.3c ISA PnP
896# AcerISDN P10 ISA PnP
897# TELEINT ISDN SPEED No.1
898device ihfc
899#
900#---------------------------------------------------------------------------
901# ifpi driver for AVM Fritz!Card PCI
902#
903# AVM Fritz!Card PCI
904device ifpi
905#
906#---------------------------------------------------------------------------
907# ifpi2 driver for AVM Fritz!Card PCI version 2
908#
909# AVM Fritz!Card PCI version 2
910device "ifpi2"
911#
912#---------------------------------------------------------------------------
913# iwic driver for Winbond W6692 chipset
914#
915# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
916device iwic
917#
918#---------------------------------------------------------------------------
919# itjc driver for Simens ISAC / TJNet Tiger300/320 chipset
920#
921# Traverse Technologies NETjet-S
922# Teles PCI-TJ
923device itjc
924#
925#---------------------------------------------------------------------------
926# iavc driver (AVM active cards, needs i4bcapi driver!)
927#
928device iavc
929#
930# AVM B1 ISA bus (PnP mode not supported!)
931# ----------------------------------------
932hint.iavc.0.at="isa"
933hint.iavc.0.port="0x150"
934hint.iavc.0.irq="5"
935#
936#---------------------------------------------------------------------------
937# ISDN Protocol Stack - mandatory for all hardware drivers
938#
939# Q.921 / layer 2 - i4b passive cards D channel handling
940device "i4bq921"
941#
942# Q.931 / layer 3 - i4b passive cards D channel handling
943device "i4bq931"
944#
945# layer 4 - i4b common passive and active card handling
946device "i4b"
947#
948#---------------------------------------------------------------------------
949# ISDN devices - mandatory for all hardware drivers
950#
951# userland driver to do ISDN tracing (for passive cards only)
952device "i4btrc" 4
953#
954# userland driver to control the whole thing
955device "i4bctl"
956#
957#---------------------------------------------------------------------------
958# ISDN devices - optional
959#
960# userland driver for access to raw B channel
961device "i4brbch" 4
962#
963# userland driver for telephony
964device "i4btel" 2
965#
966# network driver for IP over raw HDLC ISDN
967device "i4bipr" 4
968# enable VJ header compression detection for ipr i/f
969options IPR_VJ
970# enable logging of the first n IP packets to isdnd (n=32 here)
971options IPR_LOG=32
972#
973# network driver for sync PPP over ISDN; requires an equivalent
974# number of sppp device to be configured
975device "i4bisppp" 4
976#
977# B-channel interface to the netgraph subsystem
978device "i4bing" 2
979#
980# CAPI driver needed for active ISDN cards (see iavc driver above)
981device "i4bcapi"
982#
983#---------------------------------------------------------------------------
984
985#
986# Set the number of PV entries per process. Increasing this can
987# stop panics related to heavy use of shared memory. However, that can
988# (combined with large amounts of physical memory) cause panics at
989# boot time due the kernel running out of VM space.
990#
991# If you're tweaking this, you might also want to increase the sysctls
992# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
993#
994# The value below is the one more than the default.
995#
996options PMAP_SHPGPERPROC=201
997
998#
999# Change the size of the kernel virtual address space. Due to
1000# constraints in loader(8) on i386, this must be a multiple of 4.
1001# 256 = 1 GB of kernel address space. Increasing this also causes
1002# a reduction of the address space in user processes. 512 splits
1003# the 4GB cpu address space in half (2GB user, 2GB kernel).
1004#
1005options KVA_PAGES=260
1006
1007
1008#####################################################################
1009# ABI Emulation
1010
1011# Enable iBCS2 runtime support for SCO and ISC binaries
1012options IBCS2
1013
1014# Emulate spx device for client side of SVR3 local X interface
1015options SPX_HACK
1016
1017# Enable Linux ABI emulation
1018options COMPAT_LINUX
1019
1020# Enable i386 a.out binary support
1021options COMPAT_AOUT
1022
1023# Enable the linux-like proc filesystem support (requires COMPAT_LINUX
1024# and PSEUDOFS)
1025options LINPROCFS
1026
1027#
1028# SysVR4 ABI emulation
1029#
1030# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
1031# a KLD module.
1032# The STREAMS network emulation code can also be compiled statically or as a
1033# module. If loaded as a module, it must be loaded before the svr4 module
1034# (the /usr/sbin/svr4 script does this for you). If compiling statically,
1035# the `streams' device must be configured into any kernel which also
1036# specifies COMPAT_SVR4. It is possible to have a statically-configured
1037# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4
1038# script understands that it doesn't need to load the `streams' module under
1039# those circumstances.
1040# Caveat: At this time, `options KTRACE' is required for the svr4 emulator
1041# (whether static or dynamic).
1042#
1043options COMPAT_SVR4 # build emulator statically
1044options DEBUG_SVR4 # enable verbose debugging
1045device streams # STREAMS network driver (required for svr4).
1046
1047
1048#####################################################################
1049# VM OPTIONS
1050
1051# Disable the 4 MByte page PSE CPU feature. The PSE feature allows the
1052# kernel to use a 4 MByte pages to map the kernel instead of 4k pages.
1053# This saves on the amount of memory needed for page tables needed to
1054# map the kernel. You should only disable this feature as a temporary
1055# workaround if you are having problems with it enabled.
1056#
1057#options DISABLE_PSE
1058
1059# Disable the global pages PGE CPU feature. The PGE feature allows pages
1060# to be marked with the PG_G bit. TLB entries for these pages are not
1061# flushed from the cache when %cr3 is reloaded. This can make context
1062# switches less expensive. You should only disable this feature as a
1063# temporary workaround if you are having problems with it enabled.
1064#
1065#options DISABLE_PG_G
1066
1067# KSTACK_PAGES is the number of memory pages to assign to the kernel
1068# stack of each thread.
1069
1070options KSTACK_PAGES=3
1071
1072#####################################################################
1073
1074# More undocumented options for linting.
1075# Note that documenting these are not considered an affront.
1076
1077options FB_INSTALL_CDEV # install a CDEV entry in /dev
1078
1079# PECOFF module (Win32 Execution Format)
1080options PECOFF_SUPPORT
1081options PECOFF_DEBUG
1082
1083options ENABLE_ALART
1084options I4B_SMP_WORKAROUND
1085options I586_PMC_GUPROF=0x70000
1086options KBDIO_DEBUG=2
1087options KBD_MAXRETRY=4
1088options KBD_MAXWAIT=6
1089options KBD_RESETDELAY=201
1090
1091options PSM_DEBUG=1
1092
1093options TIMER_FREQ=((14318182+6)/12)
1094
1095options VM_KMEM_SIZE
1096options VM_KMEM_SIZE_MAX
1097options VM_KMEM_SIZE_SCALE
1098
1099# Yet more undocumented options for linting.
1100options COMPAT_SUNOS