Deleted Added
full compact
NOTES (124181) NOTES (124408)
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 124181 2004-01-06 18:51:14Z jhb $
7# $FreeBSD: head/sys/pc98/conf/NOTES 124408 2004-01-12 03:43:05Z nyan $
8#
9
10#
11# This directive is mandatory; it defines the architecture to be
12# configured for; in this case, the 386 family based PC-98 and
13# compatibles.
14#
15machine pc98
16options PC98
17
18#
19# We want LINT to cover profiling as well
20profile 2
21
22
23#####################################################################
24# SMP OPTIONS:
25#
26# The apic device enables the use of the I/O APIC for interrupt delivery.
27# The apic device can be used in both UP and SMP kernels, but is required
28# for SMP kernels. Thus, the apic device is not strictly an SMP option,
29# but it is a prerequisite for SMP.
30#
31# Notes:
32#
33# Be sure to disable 'cpu I386_CPU' for SMP kernels.
34#
35# By default, mixed mode is used to route IRQ0 from the AT timer via
36# the 8259A master PIC through the ExtINT pin on the first I/O APIC.
37# This can be disabled via the NO_MIXED_MODE option. In that case,
38# IRQ0 will be routed via an intpin on the first I/O APIC. Not all
39# motherboards hook IRQ0 up to the first I/O APIC even though their
40# MP table or MADT may claim to do so. That is why mixed mode is
41# enabled by default.
42#
43
44# Mandatory:
45device apic # I/O apic
46options NO_MIXED_MODE # Disable use of mixed mode
47
48
49#####################################################################
50# CPU OPTIONS
51
52#
53# You must specify at least one CPU (the one you intend to run on);
54# deleting the specification for CPUs you don't need to use may make
55# parts of the system run faster.
56# I386_CPU is mutually exclusive with the other CPU types.
57#
58#cpu I386_CPU
59cpu I486_CPU
60cpu I586_CPU # aka Pentium(tm)
61cpu I686_CPU # aka Pentium Pro(tm)
62
63#
64# Options for CPU features.
65#
66# CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM
67# BlueLightning CPU. It works only with Cyrix FPU, and this option
68# should not be used with Intel FPU.
69#
70# CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning
71# CPU if CPU supports it. The default is double-clock mode on
72# BlueLightning CPU box.
73#
74# CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1).
75#
76# CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct
77# mapped mode. Default is 2-way set associative mode.
78#
79# CPU_CYRIX_NO_LOCK enables weak locking for the entire address space
80# of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1.
81# Otherwise, the NO_LOCK bit of CCR1 is cleared. (NOTE 3)
82#
83# CPU_DISABLE_5X86_LSSER disables load store serialize (i.e. enables
84# reorder). This option should not be used if you use memory mapped
85# I/O device(s).
86#
87# CPU_ENABLE_SSE enables SSE/MMX2 instructions support. This is default
88# on I686_CPU and above.
89# CPU_DISABLE_SSE explicitly prevent I686_CPU from turning on SSE.
90#
91# CPU_FASTER_5X86_FPU enables faster FPU exception handler.
92#
93# CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products
94# for i386 machines.
95#
96# CPU_IORT defines I/O clock delay time (NOTE 1). Default values of
97# I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively
98# (no clock delay).
99#
100# CPU_L2_LATENCY specifed the L2 cache latency value. This option is used
101# only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected.
102# The default value is 5.
103#
104# CPU_LOOP_EN prevents flushing the prefetch buffer if the destination
105# of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE
106# 1).
107#
108# CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs. This option
109# is useful when you use Socket 8 to Socket 370 converter, because most Pentium
110# Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs.
111#
112# CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1).
113#
114# CPU_SUSP_HLT enables suspend on HALT. If this option is set, CPU
115# enters suspend mode following execution of HALT instruction.
116#
117# CPU_UPGRADE_HW_CACHE eliminates unneeded cache flush instruction(s).
118#
119# CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD
120# K5/K6/K6-2 cpus.
121#
122# CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache
123# flush at hold state.
124#
125# CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs
126# without cache flush at hold state, and (2) write-back CPU cache on
127# Cyrix 6x86 whose revision < 2.7 (NOTE 2).
128#
129# NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY
130# Pentiums) from locking up when a LOCK CMPXCHG8B instruction is
131# executed. This option is only needed if I586_CPU is also defined,
132# and should be included for any non-Pentium CPU that defines it.
133#
134# NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors
135# which indicates that the 15-16MB range is *definitely* not being
136# occupied by an ISA memory hole.
137#
138# CPU_DISABLE_CMPXCHG disables the CMPXCHG instruction on > i386 IA32
139# machines. VmWare seems to emulate this instruction poorly, causing
140# the guest OS to run very slowly. Enabling this with a SMP kernel
141# will cause the kernel to be unusable.
142#
143# NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT,
144# CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs.
145# These options may crash your system.
146#
147# NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled
148# in write-through mode when revision < 2.7. If revision of Cyrix
149# 6x86 >= 2.7, CPU cache is always enabled in write-back mode.
150#
151# NOTE 3: This option may cause failures for software that requires
152# locked cycles in order to operate correctly.
153#
154options CPU_BLUELIGHTNING_FPU_OP_CACHE
155options CPU_BLUELIGHTNING_3X
156options CPU_BTB_EN
157options CPU_DIRECT_MAPPED_CACHE
158options CPU_DISABLE_5X86_LSSER
159options CPU_ENABLE_SSE
160#options CPU_DISABLE_SSE
161options CPU_FASTER_5X86_FPU
162options CPU_I486_ON_386
163options CPU_IORT
164options CPU_L2_LATENCY=5
165options CPU_LOOP_EN
166options CPU_PPRO2CELERON
167options CPU_RSTK_EN
168options CPU_SUSP_HLT
169options CPU_UPGRADE_HW_CACHE
170options CPU_WT_ALLOC
171options CYRIX_CACHE_WORKS
172options CYRIX_CACHE_REALLY_WORKS
173#options NO_F00F_HACK
174options CPU_DISABLE_CMPXCHG
175
176# Debug options
177options NPX_DEBUG # enable npx debugging (FPU/math emu)
178 #new math emulator
179
180#
181# PERFMON causes the driver for Pentium/Pentium Pro performance counters
182# to be compiled. See perfmon(4) for more information.
183#
184options PERFMON
185
186
187#####################################################################
188# NETWORKING OPTIONS
189
190#
191# DEVICE_POLLING adds support for mixed interrupt-polling handling
192# of network device drivers, which has significant benefits in terms
193# of robustness to overloads and responsivity, as well as permitting
194# accurate scheduling of the CPU time between kernel network processing
195# and other activities. The drawback is a moderate (up to 1/HZ seconds)
196# potential increase in response times.
197# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING
198# to achieve smoother behaviour.
199# Additionally, you can enable/disable polling at runtime with the
200# sysctl variable kern.polling.enable (defaults off), and select
201# the CPU fraction reserved to userland with the sysctl variable
202# kern.polling.user_frac (default 50, range 0..100).
203#
8#
9
10#
11# This directive is mandatory; it defines the architecture to be
12# configured for; in this case, the 386 family based PC-98 and
13# compatibles.
14#
15machine pc98
16options PC98
17
18#
19# We want LINT to cover profiling as well
20profile 2
21
22
23#####################################################################
24# SMP OPTIONS:
25#
26# The apic device enables the use of the I/O APIC for interrupt delivery.
27# The apic device can be used in both UP and SMP kernels, but is required
28# for SMP kernels. Thus, the apic device is not strictly an SMP option,
29# but it is a prerequisite for SMP.
30#
31# Notes:
32#
33# Be sure to disable 'cpu I386_CPU' for SMP kernels.
34#
35# By default, mixed mode is used to route IRQ0 from the AT timer via
36# the 8259A master PIC through the ExtINT pin on the first I/O APIC.
37# This can be disabled via the NO_MIXED_MODE option. In that case,
38# IRQ0 will be routed via an intpin on the first I/O APIC. Not all
39# motherboards hook IRQ0 up to the first I/O APIC even though their
40# MP table or MADT may claim to do so. That is why mixed mode is
41# enabled by default.
42#
43
44# Mandatory:
45device apic # I/O apic
46options NO_MIXED_MODE # Disable use of mixed mode
47
48
49#####################################################################
50# CPU OPTIONS
51
52#
53# You must specify at least one CPU (the one you intend to run on);
54# deleting the specification for CPUs you don't need to use may make
55# parts of the system run faster.
56# I386_CPU is mutually exclusive with the other CPU types.
57#
58#cpu I386_CPU
59cpu I486_CPU
60cpu I586_CPU # aka Pentium(tm)
61cpu I686_CPU # aka Pentium Pro(tm)
62
63#
64# Options for CPU features.
65#
66# CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM
67# BlueLightning CPU. It works only with Cyrix FPU, and this option
68# should not be used with Intel FPU.
69#
70# CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning
71# CPU if CPU supports it. The default is double-clock mode on
72# BlueLightning CPU box.
73#
74# CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1).
75#
76# CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct
77# mapped mode. Default is 2-way set associative mode.
78#
79# CPU_CYRIX_NO_LOCK enables weak locking for the entire address space
80# of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1.
81# Otherwise, the NO_LOCK bit of CCR1 is cleared. (NOTE 3)
82#
83# CPU_DISABLE_5X86_LSSER disables load store serialize (i.e. enables
84# reorder). This option should not be used if you use memory mapped
85# I/O device(s).
86#
87# CPU_ENABLE_SSE enables SSE/MMX2 instructions support. This is default
88# on I686_CPU and above.
89# CPU_DISABLE_SSE explicitly prevent I686_CPU from turning on SSE.
90#
91# CPU_FASTER_5X86_FPU enables faster FPU exception handler.
92#
93# CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products
94# for i386 machines.
95#
96# CPU_IORT defines I/O clock delay time (NOTE 1). Default values of
97# I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively
98# (no clock delay).
99#
100# CPU_L2_LATENCY specifed the L2 cache latency value. This option is used
101# only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected.
102# The default value is 5.
103#
104# CPU_LOOP_EN prevents flushing the prefetch buffer if the destination
105# of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE
106# 1).
107#
108# CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs. This option
109# is useful when you use Socket 8 to Socket 370 converter, because most Pentium
110# Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs.
111#
112# CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1).
113#
114# CPU_SUSP_HLT enables suspend on HALT. If this option is set, CPU
115# enters suspend mode following execution of HALT instruction.
116#
117# CPU_UPGRADE_HW_CACHE eliminates unneeded cache flush instruction(s).
118#
119# CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD
120# K5/K6/K6-2 cpus.
121#
122# CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache
123# flush at hold state.
124#
125# CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs
126# without cache flush at hold state, and (2) write-back CPU cache on
127# Cyrix 6x86 whose revision < 2.7 (NOTE 2).
128#
129# NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY
130# Pentiums) from locking up when a LOCK CMPXCHG8B instruction is
131# executed. This option is only needed if I586_CPU is also defined,
132# and should be included for any non-Pentium CPU that defines it.
133#
134# NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors
135# which indicates that the 15-16MB range is *definitely* not being
136# occupied by an ISA memory hole.
137#
138# CPU_DISABLE_CMPXCHG disables the CMPXCHG instruction on > i386 IA32
139# machines. VmWare seems to emulate this instruction poorly, causing
140# the guest OS to run very slowly. Enabling this with a SMP kernel
141# will cause the kernel to be unusable.
142#
143# NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT,
144# CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs.
145# These options may crash your system.
146#
147# NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled
148# in write-through mode when revision < 2.7. If revision of Cyrix
149# 6x86 >= 2.7, CPU cache is always enabled in write-back mode.
150#
151# NOTE 3: This option may cause failures for software that requires
152# locked cycles in order to operate correctly.
153#
154options CPU_BLUELIGHTNING_FPU_OP_CACHE
155options CPU_BLUELIGHTNING_3X
156options CPU_BTB_EN
157options CPU_DIRECT_MAPPED_CACHE
158options CPU_DISABLE_5X86_LSSER
159options CPU_ENABLE_SSE
160#options CPU_DISABLE_SSE
161options CPU_FASTER_5X86_FPU
162options CPU_I486_ON_386
163options CPU_IORT
164options CPU_L2_LATENCY=5
165options CPU_LOOP_EN
166options CPU_PPRO2CELERON
167options CPU_RSTK_EN
168options CPU_SUSP_HLT
169options CPU_UPGRADE_HW_CACHE
170options CPU_WT_ALLOC
171options CYRIX_CACHE_WORKS
172options CYRIX_CACHE_REALLY_WORKS
173#options NO_F00F_HACK
174options CPU_DISABLE_CMPXCHG
175
176# Debug options
177options NPX_DEBUG # enable npx debugging (FPU/math emu)
178 #new math emulator
179
180#
181# PERFMON causes the driver for Pentium/Pentium Pro performance counters
182# to be compiled. See perfmon(4) for more information.
183#
184options PERFMON
185
186
187#####################################################################
188# NETWORKING OPTIONS
189
190#
191# DEVICE_POLLING adds support for mixed interrupt-polling handling
192# of network device drivers, which has significant benefits in terms
193# of robustness to overloads and responsivity, as well as permitting
194# accurate scheduling of the CPU time between kernel network processing
195# and other activities. The drawback is a moderate (up to 1/HZ seconds)
196# potential increase in response times.
197# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING
198# to achieve smoother behaviour.
199# Additionally, you can enable/disable polling at runtime with the
200# sysctl variable kern.polling.enable (defaults off), and select
201# the CPU fraction reserved to userland with the sysctl variable
202# kern.polling.user_frac (default 50, range 0..100).
203#
204# Only the "dc" "fxp" and "sis" devices support this mode of operation at
205# the time of this writing.
204# Not all device drivers support this mode of operation at the time of
205# this writing. See polling(4) for more details.
206
207options DEVICE_POLLING
208
209
210#####################################################################
211# CLOCK OPTIONS
212
213# The following options are used for debugging clock behavior only, and
214# should not be used for production systems.
215
216# CLK_CALIBRATION_LOOP causes clock calibration to be run in a loop at
217# startup until the user presses a key. (The i8254 clock is always
218# calibrated relative to the RTC (mc146818a) and this option causes the
219# calibration to be repeated.)
220options CLK_CALIBRATION_LOOP
221
222# CLK_USE_I8254_CALIBRATION causes the calibrated frequency of the i8254
223# clock to actually be used.
224options CLK_USE_I8254_CALIBRATION
225
226
227#####################################################################
228# MISCELLANEOUS DEVICES AND OPTIONS
229
230device speaker #Play IBM BASIC-style noises out your speaker
231hint.speaker.0.at="isa"
232hint.speaker.0.port="0x35"
233device gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT!
234device apm_saver # Requires APM
235
236
237#####################################################################
238# HARDWARE BUS CONFIGURATION
239
240#
241# ISA bus
242#
243device isa
244
245#
246# Options for `isa':
247#
248# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
249# interrupt controller. This saves about 0.7-1.25 usec for each interrupt.
250# This option breaks suspend/resume on some portables.
251#
252# MAXMEM specifies the amount of RAM on the machine; if this is not
253# specified, FreeBSD will first read the amount of memory from the CMOS
254# RAM, so the amount of memory will initially be limited to 64MB or 16MB
255# depending on the BIOS. If the BIOS reports 64MB, a memory probe will
256# then attempt to detect the installed amount of RAM. If this probe
257# fails to detect >64MB RAM you will have to use the MAXMEM option.
258# The amount is in kilobytes, so for a machine with 128MB of RAM, it would
259# be 131072 (128 * 1024).
260#
261# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
262# reset the CPU for reboot. This is needed on some systems with broken
263# keyboard controllers.
264
265options COMPAT_OLDISA #Use ISA shims and glue for old drivers
266options AUTO_EOI_1
267
268options MAXMEM=(128*1024)
269#options BROKEN_KEYBOARD_RESET
270options EPSON_BOUNCEDMA
271options EPSON_MEMWIN
272
273#
274# PCI bus & PCI options:
275#
276device pci
277
278#
279# AGP GART support
280device agp
281
282
283#####################################################################
284# HARDWARE DEVICE CONFIGURATION
285
286#
287# Mandatory devices:
288#
289
290# PC98 keyboard
291device pckbd
292hint.pckbd.0.at="isa"
293hint.pckbd.0.port="0x041"
294hint.pckbd.0.irq="1"
295
296# These options are valid for other keyboard drivers as well.
297options KBD_DISABLE_KEYMAP_LOAD # refuse to load a keymap
298options KBD_INSTALL_CDEV # install a CDEV entry in /dev
299
300# GDC screen
301device gdc
302hint.gdc.0.at="isa"
303options LINE30
304
305#
306# The Numeric Processing eXtension driver. In addition to this, you
307# may configure a math emulator (see above). If your machine has a
308# hardware FPU and the kernel configuration includes the npx device
309# *and* a math emulator compiled into the kernel, the hardware FPU
310# will be used, unless it is found to be broken or unless "flags" to
311# npx0 includes "0x08", which requests preference for the emulator.
312device npx
313
314#
315# `flags' for npx0:
316# 0x01 don't use the npx registers to optimize bcopy.
317# 0x02 don't use the npx registers to optimize bzero.
318# 0x04 don't use the npx registers to optimize copyin or copyout.
319# 0x08 use emulator even if hardware FPU is available.
320# The npx registers are normally used to optimize copying and zeroing when
321# all of the following conditions are satisfied:
322# I586_CPU is an option
323# the cpu is an i586 (perhaps not a Pentium)
324# the probe for npx0 succeeds
325# INT 16 exception handling works.
326# Then copying and zeroing using the npx registers is normally 30-100% faster.
327# The flags can be used to control cases where it doesn't work or is slower.
328# Setting them at boot time using userconfig works right (the optimizations
329# are not used until later in the bootstrap when npx0 is attached).
330# Flag 0x08 automatically disables the i586 optimized routines.
331#
332
333#
334# Optional devices:
335#
336
337# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create
338# the /dev/3dfx0 device to work with glide implementations. This should get
339# linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as
340# the tdfx DRI module from XFree86 and is completely unrelated.
341#
342# To enable Linuxulator support, one must also include COMPAT_LINUX in the
343# config as well, or you will not have the dependencies. The other option
344# is to load both as modules.
345
346device tdfx # Enable 3Dfx Voodoo support
347options TDFX_LINUX # Enable Linuxulator support
348
349# DRM options:
350# mgadrm: AGP Matrox G200, G400, G450, G550
351# r128drm: ATI Rage 128
352# radeondrm: ATI Radeon up to 9000/9100
353# sisdrm: SiS 300/305,540,630
354# tdfxdrm: 3dfx Voodoo 3/4/5 and Banshee
355# DRM_DEBUG: include debug printfs, very slow
356#
357# mga requires AGP in the kernel, and it is recommended
358# for AGP r128 and radeon cards.
359
360device mgadrm
361device "r128drm"
362device radeondrm
363device sisdrm
364device tdfxdrm
365
366options DRM_DEBUG
367
368#
369# Bus mouse
370#
371device mse
372hint.mse.0.at="isa"
373hint.mse.0.port="0x7fd9"
374hint.mse.0.irq="13"
375
376#
377# Network interfaces:
378#
379
380# ar: Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
381# (requires sppp)
382# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
383# HP PC Lan+, various PC Card devices (refer to etc/defauls/pccard.conf)
384# (requires miibus)
385# el: 3Com 3C501 (slow!)
386# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
387# Intel EtherExpress
388# le: Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100,
389# DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422)
390# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and
391# Am79C960)
392# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133
393# (no hints needed).
394# Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140,
395# OC-3141, OC-3540, OC-3250
396# rdp: RealTek RTL 8002-based pocket ethernet adapters
397# sbni: Granch SBNI12-xx ISA and PCI adapters
398# sr: RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
399# wl: Lucent Wavelan (ISA card only).
400
401# Order for ISA/EISA devices is important here
402
403device ar
404hint.ar.0.at="isa"
405hint.ar.0.port="0x300"
406hint.ar.0.irq="10"
407hint.ar.0.maddr="0xd0000"
408device ed
409#options ED_NO_MIIBUS # Disable ed miibus support
410hint.ed.0.at="isa"
411hint.ed.0.port="0x280"
412hint.ed.0.irq="5"
413hint.ed.0.maddr="0xd8000"
414device el 1
415hint.el.0.at="isa"
416hint.el.0.port="0x300"
417hint.el.0.irq="9"
418device ie # Hints only required for Starlan
419hint.ie.2.at="isa"
420hint.ie.2.port="0x300"
421hint.ie.2.irq="5"
422hint.ie.2.maddr="0xd0000"
423device le 1
424hint.le.0.at="isa"
425hint.le.0.port="0x300"
426hint.le.0.irq="5"
427hint.le.0.maddr="0xd0000"
428device lnc
429hint.lnc.0.at="isa"
430hint.lnc.0.port="0x280"
431hint.lnc.0.irq="10"
432hint.lnc.0.drq="0"
433device rdp 1
434hint.rdp.0.at="isa"
435hint.rdp.0.port="0x378"
436hint.rdp.0.irq="7"
437hint.rdp.0.flags="2"
438device sbni
439hint.sbni.0.at="isa"
440hint.sbni.0.port="0x210"
441hint.sbni.0.irq="0xefdead"
442hint.sbni.0.flags="0"
443device snc
444hint.snc.0.at="isa"
445hint.snc.0.port="0x888"
446hint.snc.0.irq="6"
447hint.snc.0.maddr="0xc0000"
448device sr
449hint.sr.0.at="isa"
450hint.sr.0.port="0x300"
451hint.sr.0.irq="5"
452hint.sr.0.maddr="0xd0000"
453device oltr
454hint.oltr.0.at="isa"
455device wl
456hint.wl.0.at="isa"
457hint.wl.0.port="0x300"
458options WLCACHE # enables the signal-strength cache
459options WLDEBUG # enables verbose debugging output
460
461#
462# SCSI host adapters:
463#
464# ct: WD33C93[ABC] based SCSI host adapters.
465# ncv: NCR 53C500 based SCSI host adapters.
466# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
467# stg: TMC 18C30, 18C50 based SCSI host adapters.
468
469device ct
470hint.ct.0.at="isa"
471device ncv
472device nsp
473device stg
474hint.stg.0.at="isa"
475hint.stg.0.port="0x140"
476hint.stg.0.port="11"
477
478#
479# SafeNet crypto driver: can be moved to the MI NOTES as soon as
480# it's tested on a big-endian machine
481#
482device safe # SafeNet 1141
483options SAFE_DEBUG # enable debugging support: hw.safe.debug
484options SAFE_RNDTEST # enable rndtest support
485
486#####################################################################
487
488#
489# Miscellaneous hardware:
490#
491# wt: Wangtek and Archive QIC-02/QIC-36 tape drives
492# ctx: Cortex-I frame grabber
493# apm: Laptop Advanced Power Management (experimental)
494# pmtimer: Timer device driver for power management events (APM or ACPI)
495# spigot: The Creative Labs Video Spigot video-acquisition board
496# digi: Digiboard driver
497# gp: National Instruments AT-GPIB and AT-GPIB/TNT board, PCMCIA-GPIB
498# stl: Stallion EasyIO and EasyConnection 8/32 (cd1400 based)
499# stli: Stallion EasyConnection 8/64, ONboard, Brumby (intelligent)
500
501# Notes on APM
502# The flags takes the following meaning for apm0:
503# 0x0020 Statclock is broken.
504# If apm is omitted, some systems require sysctl kern.timecounter.method=1
505# for correct timekeeping.
506
507# Notes on the spigot:
508# The video spigot is at 0xad6. This port address can not be changed.
509# The irq values may only be 10, 11, or 15
510# I/O memory is an 8kb region. Possible values are:
511# 0a0000, 0a2000, ..., 0fffff, f00000, f02000, ..., ffffff
512# The start address must be on an even boundary.
513# Add the following option if you want to allow non-root users to be able
514# to access the spigot. This option is not secure because it allows users
515# direct access to the I/O page.
516# options SPIGOT_UNSECURE
517
518# Notes on the Specialix SI/XIO driver:
519# The host card is memory, not IO mapped.
520# The Rev 1 host cards use a 64K chunk, on a 32K boundary.
521# The Rev 2 host cards use a 32K chunk, on a 32K boundary.
522# The cards can use an IRQ of 11, 12 or 15.
523
524# Notes on the Sony Programmable I/O controller
525# This is a temporary driver that should someday be replaced by something
526# that hooks into the ACPI layer. The device is hooked to the PIIX4's
527# General Device 10 decoder, which means you have to fiddle with PCI
528# registers to map it in, even though it is otherwise treated here as
529# an ISA device. At the moment, the driver polls, although the device
530# is capable of generating interrupts. It largely undocumented.
531# The port location in the hint is where you WANT the device to be
532# mapped. 0x10a0 seems to be traditional. At the moment the jogdial
533# is the only thing truly supported, but aparently a fair percentage
534# of the Vaio extra features are controlled by this device.
535
536# Notes on the Stallion stl and stli drivers:
537# See src/i386/isa/README.stl for complete instructions.
538# This is version 0.0.5alpha, unsupported by Stallion.
539# The stl driver has a secondary IO port hard coded at 0x280. You need
540# to change src/i386/isa/stallion.c if you reconfigure this on the boards.
541# The "flags" and "msize" settings on the stli driver depend on the board:
542# EasyConnection 8/64 ISA: flags 23 msize 0x1000
543# EasyConnection 8/64 EISA: flags 24 msize 0x10000
544# EasyConnection 8/64 MCA: flags 25 msize 0x1000
545# ONboard ISA: flags 4 msize 0x10000
546# ONboard EISA: flags 7 msize 0x10000
547# ONboard MCA: flags 3 msize 0x10000
548# Brumby: flags 2 msize 0x4000
549# Stallion: flags 1 msize 0x10000
550
551device wt 1
552hint.wt.0.at="isa"
553hint.wt.0.port="0x300"
554hint.wt.0.irq="5"
555hint.wt.0.drq="1"
556device ctx
557hint.ctx.0.at="isa"
558hint.ctx.0.port="0x230"
559hint.ctx.0.maddr="0xd0000"
560device spigot 1
561hint.spigot.0.at="isa"
562hint.spigot.0.port="0xad6"
563hint.spigot.0.irq="15"
564hint.spigot.0.maddr="0xee000"
565device apm
566hint.apm.0.flags="0x20"
567device pmc
568device canbus
569device canbepm
570hint.pmc.0.at="isa"
571hint.pmc.0.port="0x8f0"
572device pmtimer # Adjust system timer at wakeup time
573device gp
574hint.gp.0.at="isa"
575hint.gp.0.port="0x2c0"
576device digi
577hint.digi.0.at="isa"
578hint.digi.0.port="0x104"
579hint.digi.0.maddr="0xd0000"
580# BIOS & FEP/OS components of device digi.
581device digi_CX
582device digi_CX_PCI
583device digi_EPCX
584device digi_EPCX_PCI
585device digi_Xe
586device digi_Xem
587device digi_Xr
588device stl
589hint.stl.0.at="isa"
590hint.stl.0.port="0x2a0"
591hint.stl.0.irq="10"
592device stli
593hint.stli.0.at="isa"
594hint.stli.0.port="0x2a0"
595hint.stli.0.maddr="0xcc000"
596hint.stli.0.flags="23"
597hint.stli.0.msize="0x1000"
598device olpt
599hint.olpt.0.at="isa"
600hint.olpt.0.port="0x040"
601
602#
603# Laptop/Notebook options:
604#
605# See also:
606# apm under `Miscellaneous hardware'
607# above.
608
609# For older notebooks that signal a powerfail condition (external
610# power supply dropped, or battery state low) by issuing an NMI:
611
612options POWERFAIL_NMI # make it beep instead of panicing
613
614#
615# PC Card/PCMCIA
616# (OLDCARD)
617#
618# card: pccard slots
619# pcic: isa/pccard bridge
620device pcic
621hint.pcic.0.at="isa"
622#hint.pcic.1.at="isa"
623device card 1
624
625#
626# PC Card/PCMCIA and Cardbus
627# (NEWCARD)
628#
629# Note that NEWCARD and OLDCARD are incompatible. Do not use both at the same
630# time.
631#
632# pccbb: pci/cardbus bridge implementing YENTA interface
633# pccard: pccard slots
634# cardbus: cardbus slots
635#device cbb
636#device pccard
637#device cardbus
638#device pcic ISA attachment currently busted
639#hint.pcic.0.at="isa"
640#hint.pcic.1.at="isa"
641
642#---------------------------------------------------------------------------
643# ISDN4BSD
644#
645# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
646#
647# i4b passive ISDN cards support contains the following hardware drivers:
648#
649# isic - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
650# iwic - Winbond W6692 PCI bus ISDN S/T interface controller
651# ifpi - AVM Fritz!Card PCI driver
652# ifpi2 - AVM Fritz!Card PCI version 2 driver
653# ihfc - Cologne Chip HFC ISA/ISA-PnP chipset driver
654# ifpnp - AVM Fritz!Card PnP driver
655# itjc - Siemens ISAC / TJNet Tiger300/320 chipset
656#
657# i4b active ISDN cards support contains the following hardware drivers:
658#
659# iavc - AVM B1 PCI, AVM B1 ISA, AVM T1
660#
661# Note that the ``options'' (if given) and ``device'' lines must BOTH
662# be uncommented to enable support for a given card !
663#
664# In addition to a hardware driver (and probably an option) the mandatory
665# ISDN protocol stack devices and the mandatory support device must be
666# enabled as well as one or more devices from the optional devices section.
667#
668#---------------------------------------------------------------------------
669# isic driver (Siemens/Infineon chipsets)
670#
671device isic
672#
673# PCI bus Cards:
674# --------------
675#
676# Cyclades Cyclom-Y PCI serial driver
677device cy 1
678options CY_PCI_FASTINTR # Use with cy_pci unless irq is shared
679hint.cy.0.at="isa"
680hint.cy.0.irq="10"
681hint.cy.0.maddr="0xd4000"
682hint.cy.0.msize="0x2000"
683#
684#---------------------------------------------------------------------------
685# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
686options ELSA_QS1PCI
687#
688#
689#---------------------------------------------------------------------------
690# ifpnp driver for AVM Fritz!Card PnP
691#
692# AVM Fritz!Card PnP
693device ifpnp
694#
695#---------------------------------------------------------------------------
696# ihfc driver for Cologne Chip ISA chipsets (experimental!)
697#
698# Teles 16.3c ISA PnP
699# AcerISDN P10 ISA PnP
700# TELEINT ISDN SPEED No.1
701device ihfc
702#
703#---------------------------------------------------------------------------
704# ifpi driver for AVM Fritz!Card PCI
705#
706# AVM Fritz!Card PCI
707device ifpi
708#
709#---------------------------------------------------------------------------
710# ifpi2 driver for AVM Fritz!Card PCI version 2
711#
712# AVM Fritz!Card PCI version 2
713device "ifpi2"
714#
715#---------------------------------------------------------------------------
716# iwic driver for Winbond W6692 chipset
717#
718# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
719device iwic
720#
721#---------------------------------------------------------------------------
722# itjc driver for Simens ISAC / TJNet Tiger300/320 chipset
723#
724# Traverse Technologies NETjet-S
725# Teles PCI-TJ
726device itjc
727#
728#---------------------------------------------------------------------------
729# iavc driver (AVM active cards, needs i4bcapi driver!)
730#
731device iavc
732#
733# AVM B1 ISA bus (PnP mode not supported!)
734# ----------------------------------------
735hint.iavc.0.at="isa"
736hint.iavc.0.port="0x150"
737hint.iavc.0.irq="5"
738#
739#---------------------------------------------------------------------------
740# ISDN Protocol Stack - mandatory for all hardware drivers
741#
742# Q.921 / layer 2 - i4b passive cards D channel handling
743device "i4bq921"
744#
745# Q.931 / layer 3 - i4b passive cards D channel handling
746device "i4bq931"
747#
748# layer 4 - i4b common passive and active card handling
749device "i4b"
750#
751#---------------------------------------------------------------------------
752# ISDN devices - mandatory for all hardware drivers
753#
754# userland driver to do ISDN tracing (for passive cards only)
755device "i4btrc" 4
756#
757# userland driver to control the whole thing
758device "i4bctl"
759#
760#---------------------------------------------------------------------------
761# ISDN devices - optional
762#
763# userland driver for access to raw B channel
764device "i4brbch" 4
765#
766# userland driver for telephony
767device "i4btel" 2
768#
769# network driver for IP over raw HDLC ISDN
770device "i4bipr" 4
771# enable VJ header compression detection for ipr i/f
772options IPR_VJ
773# enable logging of the first n IP packets to isdnd (n=32 here)
774options IPR_LOG=32
775#
776# network driver for sync PPP over ISDN; requires an equivalent
777# number of sppp device to be configured
778device "i4bisppp" 4
779#
780# B-channel interface to the netgraph subsystem
781device "i4bing" 2
782#
783# CAPI driver needed for active ISDN cards (see iavc driver above)
784device "i4bcapi"
785#
786#---------------------------------------------------------------------------
787
788#
789# Set the number of PV entries per process. Increasing this can
790# stop panics related to heavy use of shared memory. However, that can
791# (combined with large amounts of physical memory) cause panics at
792# boot time due the kernel running out of VM space.
793#
794# If you're tweaking this, you might also want to increase the sysctls
795# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
796#
797# The value below is the one more than the default.
798#
799options PMAP_SHPGPERPROC=201
800
801#
802# Change the size of the kernel virtual address space. Due to
803# constraints in loader(8) on i386, this must be a multiple of 4.
804# 256 = 1 GB of kernel address space. Increasing this also causes
805# a reduction of the address space in user processes. 512 splits
806# the 4GB cpu address space in half (2GB user, 2GB kernel).
807#
808options KVA_PAGES=260
809
810
811#####################################################################
812# ABI Emulation
813
814# Enable iBCS2 runtime support for SCO and ISC binaries
815options IBCS2
816
817# Emulate spx device for client side of SVR3 local X interface
818options SPX_HACK
819
820# Enable Linux ABI emulation
821options COMPAT_LINUX
822
823# Enable i386 a.out binary support
824options COMPAT_AOUT
825
826# Enable the linux-like proc filesystem support (requires COMPAT_LINUX
827# and PSEUDOFS)
828options LINPROCFS
829
830#
831# SysVR4 ABI emulation
832#
833# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
834# a KLD module.
835# The STREAMS network emulation code can also be compiled statically or as a
836# module. If loaded as a module, it must be loaded before the svr4 module
837# (the /usr/sbin/svr4 script does this for you). If compiling statically,
838# the `streams' device must be configured into any kernel which also
839# specifies COMPAT_SVR4. It is possible to have a statically-configured
840# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4
841# script understands that it doesn't need to load the `streams' module under
842# those circumstances.
843# Caveat: At this time, `options KTRACE' is required for the svr4 emulator
844# (whether static or dynamic).
845#
846options COMPAT_SVR4 # build emulator statically
847options DEBUG_SVR4 # enable verbose debugging
848device streams # STREAMS network driver (required for svr4).
849
850
851#####################################################################
852# VM OPTIONS
853
854# Disable the 4 MByte page PSE CPU feature. The PSE feature allows the
855# kernel to use a 4 MByte pages to map the kernel instead of 4k pages.
856# This saves on the amount of memory needed for page tables needed to
857# map the kernel. You should only disable this feature as a temporary
858# workaround if you are having problems with it enabled.
859#
860#options DISABLE_PSE
861
862# Disable the global pages PGE CPU feature. The PGE feature allows pages
863# to be marked with the PG_G bit. TLB entries for these pages are not
864# flushed from the cache when %cr3 is reloaded. This can make context
865# switches less expensive. You should only disable this feature as a
866# temporary workaround if you are having problems with it enabled.
867#
868#options DISABLE_PG_G
869
870# KSTACK_PAGES is the number of memory pages to assign to the kernel
871# stack of each thread.
872
873options KSTACK_PAGES=3
874
875#####################################################################
876
877# More undocumented options for linting.
878# Note that documenting these are not considered an affront.
879
880options FB_INSTALL_CDEV # install a CDEV entry in /dev
881
882# PECOFF module (Win32 Execution Format)
883options PECOFF_SUPPORT
884options PECOFF_DEBUG
885
886options ENABLE_ALART
887options I4B_SMP_WORKAROUND
888options I586_PMC_GUPROF=0x70000
889options KBDIO_DEBUG=2
890options KBD_MAXRETRY=4
891options KBD_MAXWAIT=6
892options KBD_RESETDELAY=201
893
894options TIMER_FREQ=((14318182+6)/12)
895
896options VM_KMEM_SIZE
897options VM_KMEM_SIZE_MAX
898options VM_KMEM_SIZE_SCALE
899
900
901#####################################################################
902# Devices we don't want to deal with
903
904nodevice atkbdc
905nodevice atkbd
906nodevice psm
907nodevice vga
908nodevice bt
909nodevice adw
910nodevice aha
911nodevice ahb
912nodevice ahd
913nodevice mpt
914nodevice trm
915nodevice wds
916nodevice asr
917nodevice dpt
918nodevice ciss
919nodevice iir
920nodevice mly
921nodevice ida # Compaq Smart RAID
922nodevice mlx # Mylex DAC960
923nodevice amr # AMI MegaRAID
924nodevice twe # 3ware ATA RAID
925nodevice cm
926nodevice cs
927nodevice ex
928nodevice fea
929nodevice cbb
930nodevice pccard
931nodevice cardbus
932nodevice intpm
933nodevice alpm
934nodevice ichsmb
935nodevice viapm
936nodevice amdpm
937nodevice nfpm
938
939
940#####################################################################
941# Options we don't want to deal with
942
943nooption VGA_DEBUG
944nooption VGA_WIDTH90
945nooption VGA_SLOW_IOACCESS
946nooption VGA_ALT_SEQACCESS
947nooption PSM_RESETAFTERSUSPEND
948nooption PSM_HOOKRESUME
949nooption ATKBD_DFLT_KEYMAP
950nooption AHD_DEBUG
951nooption AHD_DEBUG_OPTS
952nooption AHD_REG_PRETTY_PRINT
953nooption ADW_ALLOW_MEMIO
954nooption DPT_LOST_IRQ
955nooption DPT_RESET_HBA
956nooption DPT_TIMEOUT_FACTOR
957nooption AAC_DEBUG
958nooption ACPI_MAX_THREADS
959
960
961#####################################################################
962# Make options we don't want to deal with
963
964nomakeoption ATKBD_DFLT_KEYMAP
206
207options DEVICE_POLLING
208
209
210#####################################################################
211# CLOCK OPTIONS
212
213# The following options are used for debugging clock behavior only, and
214# should not be used for production systems.
215
216# CLK_CALIBRATION_LOOP causes clock calibration to be run in a loop at
217# startup until the user presses a key. (The i8254 clock is always
218# calibrated relative to the RTC (mc146818a) and this option causes the
219# calibration to be repeated.)
220options CLK_CALIBRATION_LOOP
221
222# CLK_USE_I8254_CALIBRATION causes the calibrated frequency of the i8254
223# clock to actually be used.
224options CLK_USE_I8254_CALIBRATION
225
226
227#####################################################################
228# MISCELLANEOUS DEVICES AND OPTIONS
229
230device speaker #Play IBM BASIC-style noises out your speaker
231hint.speaker.0.at="isa"
232hint.speaker.0.port="0x35"
233device gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT!
234device apm_saver # Requires APM
235
236
237#####################################################################
238# HARDWARE BUS CONFIGURATION
239
240#
241# ISA bus
242#
243device isa
244
245#
246# Options for `isa':
247#
248# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
249# interrupt controller. This saves about 0.7-1.25 usec for each interrupt.
250# This option breaks suspend/resume on some portables.
251#
252# MAXMEM specifies the amount of RAM on the machine; if this is not
253# specified, FreeBSD will first read the amount of memory from the CMOS
254# RAM, so the amount of memory will initially be limited to 64MB or 16MB
255# depending on the BIOS. If the BIOS reports 64MB, a memory probe will
256# then attempt to detect the installed amount of RAM. If this probe
257# fails to detect >64MB RAM you will have to use the MAXMEM option.
258# The amount is in kilobytes, so for a machine with 128MB of RAM, it would
259# be 131072 (128 * 1024).
260#
261# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
262# reset the CPU for reboot. This is needed on some systems with broken
263# keyboard controllers.
264
265options COMPAT_OLDISA #Use ISA shims and glue for old drivers
266options AUTO_EOI_1
267
268options MAXMEM=(128*1024)
269#options BROKEN_KEYBOARD_RESET
270options EPSON_BOUNCEDMA
271options EPSON_MEMWIN
272
273#
274# PCI bus & PCI options:
275#
276device pci
277
278#
279# AGP GART support
280device agp
281
282
283#####################################################################
284# HARDWARE DEVICE CONFIGURATION
285
286#
287# Mandatory devices:
288#
289
290# PC98 keyboard
291device pckbd
292hint.pckbd.0.at="isa"
293hint.pckbd.0.port="0x041"
294hint.pckbd.0.irq="1"
295
296# These options are valid for other keyboard drivers as well.
297options KBD_DISABLE_KEYMAP_LOAD # refuse to load a keymap
298options KBD_INSTALL_CDEV # install a CDEV entry in /dev
299
300# GDC screen
301device gdc
302hint.gdc.0.at="isa"
303options LINE30
304
305#
306# The Numeric Processing eXtension driver. In addition to this, you
307# may configure a math emulator (see above). If your machine has a
308# hardware FPU and the kernel configuration includes the npx device
309# *and* a math emulator compiled into the kernel, the hardware FPU
310# will be used, unless it is found to be broken or unless "flags" to
311# npx0 includes "0x08", which requests preference for the emulator.
312device npx
313
314#
315# `flags' for npx0:
316# 0x01 don't use the npx registers to optimize bcopy.
317# 0x02 don't use the npx registers to optimize bzero.
318# 0x04 don't use the npx registers to optimize copyin or copyout.
319# 0x08 use emulator even if hardware FPU is available.
320# The npx registers are normally used to optimize copying and zeroing when
321# all of the following conditions are satisfied:
322# I586_CPU is an option
323# the cpu is an i586 (perhaps not a Pentium)
324# the probe for npx0 succeeds
325# INT 16 exception handling works.
326# Then copying and zeroing using the npx registers is normally 30-100% faster.
327# The flags can be used to control cases where it doesn't work or is slower.
328# Setting them at boot time using userconfig works right (the optimizations
329# are not used until later in the bootstrap when npx0 is attached).
330# Flag 0x08 automatically disables the i586 optimized routines.
331#
332
333#
334# Optional devices:
335#
336
337# 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support. This will create
338# the /dev/3dfx0 device to work with glide implementations. This should get
339# linked to /dev/3dfx and /dev/voodoo. Note that this is not the same as
340# the tdfx DRI module from XFree86 and is completely unrelated.
341#
342# To enable Linuxulator support, one must also include COMPAT_LINUX in the
343# config as well, or you will not have the dependencies. The other option
344# is to load both as modules.
345
346device tdfx # Enable 3Dfx Voodoo support
347options TDFX_LINUX # Enable Linuxulator support
348
349# DRM options:
350# mgadrm: AGP Matrox G200, G400, G450, G550
351# r128drm: ATI Rage 128
352# radeondrm: ATI Radeon up to 9000/9100
353# sisdrm: SiS 300/305,540,630
354# tdfxdrm: 3dfx Voodoo 3/4/5 and Banshee
355# DRM_DEBUG: include debug printfs, very slow
356#
357# mga requires AGP in the kernel, and it is recommended
358# for AGP r128 and radeon cards.
359
360device mgadrm
361device "r128drm"
362device radeondrm
363device sisdrm
364device tdfxdrm
365
366options DRM_DEBUG
367
368#
369# Bus mouse
370#
371device mse
372hint.mse.0.at="isa"
373hint.mse.0.port="0x7fd9"
374hint.mse.0.irq="13"
375
376#
377# Network interfaces:
378#
379
380# ar: Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
381# (requires sppp)
382# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
383# HP PC Lan+, various PC Card devices (refer to etc/defauls/pccard.conf)
384# (requires miibus)
385# el: 3Com 3C501 (slow!)
386# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
387# Intel EtherExpress
388# le: Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100,
389# DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422)
390# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and
391# Am79C960)
392# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133
393# (no hints needed).
394# Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140,
395# OC-3141, OC-3540, OC-3250
396# rdp: RealTek RTL 8002-based pocket ethernet adapters
397# sbni: Granch SBNI12-xx ISA and PCI adapters
398# sr: RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
399# wl: Lucent Wavelan (ISA card only).
400
401# Order for ISA/EISA devices is important here
402
403device ar
404hint.ar.0.at="isa"
405hint.ar.0.port="0x300"
406hint.ar.0.irq="10"
407hint.ar.0.maddr="0xd0000"
408device ed
409#options ED_NO_MIIBUS # Disable ed miibus support
410hint.ed.0.at="isa"
411hint.ed.0.port="0x280"
412hint.ed.0.irq="5"
413hint.ed.0.maddr="0xd8000"
414device el 1
415hint.el.0.at="isa"
416hint.el.0.port="0x300"
417hint.el.0.irq="9"
418device ie # Hints only required for Starlan
419hint.ie.2.at="isa"
420hint.ie.2.port="0x300"
421hint.ie.2.irq="5"
422hint.ie.2.maddr="0xd0000"
423device le 1
424hint.le.0.at="isa"
425hint.le.0.port="0x300"
426hint.le.0.irq="5"
427hint.le.0.maddr="0xd0000"
428device lnc
429hint.lnc.0.at="isa"
430hint.lnc.0.port="0x280"
431hint.lnc.0.irq="10"
432hint.lnc.0.drq="0"
433device rdp 1
434hint.rdp.0.at="isa"
435hint.rdp.0.port="0x378"
436hint.rdp.0.irq="7"
437hint.rdp.0.flags="2"
438device sbni
439hint.sbni.0.at="isa"
440hint.sbni.0.port="0x210"
441hint.sbni.0.irq="0xefdead"
442hint.sbni.0.flags="0"
443device snc
444hint.snc.0.at="isa"
445hint.snc.0.port="0x888"
446hint.snc.0.irq="6"
447hint.snc.0.maddr="0xc0000"
448device sr
449hint.sr.0.at="isa"
450hint.sr.0.port="0x300"
451hint.sr.0.irq="5"
452hint.sr.0.maddr="0xd0000"
453device oltr
454hint.oltr.0.at="isa"
455device wl
456hint.wl.0.at="isa"
457hint.wl.0.port="0x300"
458options WLCACHE # enables the signal-strength cache
459options WLDEBUG # enables verbose debugging output
460
461#
462# SCSI host adapters:
463#
464# ct: WD33C93[ABC] based SCSI host adapters.
465# ncv: NCR 53C500 based SCSI host adapters.
466# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
467# stg: TMC 18C30, 18C50 based SCSI host adapters.
468
469device ct
470hint.ct.0.at="isa"
471device ncv
472device nsp
473device stg
474hint.stg.0.at="isa"
475hint.stg.0.port="0x140"
476hint.stg.0.port="11"
477
478#
479# SafeNet crypto driver: can be moved to the MI NOTES as soon as
480# it's tested on a big-endian machine
481#
482device safe # SafeNet 1141
483options SAFE_DEBUG # enable debugging support: hw.safe.debug
484options SAFE_RNDTEST # enable rndtest support
485
486#####################################################################
487
488#
489# Miscellaneous hardware:
490#
491# wt: Wangtek and Archive QIC-02/QIC-36 tape drives
492# ctx: Cortex-I frame grabber
493# apm: Laptop Advanced Power Management (experimental)
494# pmtimer: Timer device driver for power management events (APM or ACPI)
495# spigot: The Creative Labs Video Spigot video-acquisition board
496# digi: Digiboard driver
497# gp: National Instruments AT-GPIB and AT-GPIB/TNT board, PCMCIA-GPIB
498# stl: Stallion EasyIO and EasyConnection 8/32 (cd1400 based)
499# stli: Stallion EasyConnection 8/64, ONboard, Brumby (intelligent)
500
501# Notes on APM
502# The flags takes the following meaning for apm0:
503# 0x0020 Statclock is broken.
504# If apm is omitted, some systems require sysctl kern.timecounter.method=1
505# for correct timekeeping.
506
507# Notes on the spigot:
508# The video spigot is at 0xad6. This port address can not be changed.
509# The irq values may only be 10, 11, or 15
510# I/O memory is an 8kb region. Possible values are:
511# 0a0000, 0a2000, ..., 0fffff, f00000, f02000, ..., ffffff
512# The start address must be on an even boundary.
513# Add the following option if you want to allow non-root users to be able
514# to access the spigot. This option is not secure because it allows users
515# direct access to the I/O page.
516# options SPIGOT_UNSECURE
517
518# Notes on the Specialix SI/XIO driver:
519# The host card is memory, not IO mapped.
520# The Rev 1 host cards use a 64K chunk, on a 32K boundary.
521# The Rev 2 host cards use a 32K chunk, on a 32K boundary.
522# The cards can use an IRQ of 11, 12 or 15.
523
524# Notes on the Sony Programmable I/O controller
525# This is a temporary driver that should someday be replaced by something
526# that hooks into the ACPI layer. The device is hooked to the PIIX4's
527# General Device 10 decoder, which means you have to fiddle with PCI
528# registers to map it in, even though it is otherwise treated here as
529# an ISA device. At the moment, the driver polls, although the device
530# is capable of generating interrupts. It largely undocumented.
531# The port location in the hint is where you WANT the device to be
532# mapped. 0x10a0 seems to be traditional. At the moment the jogdial
533# is the only thing truly supported, but aparently a fair percentage
534# of the Vaio extra features are controlled by this device.
535
536# Notes on the Stallion stl and stli drivers:
537# See src/i386/isa/README.stl for complete instructions.
538# This is version 0.0.5alpha, unsupported by Stallion.
539# The stl driver has a secondary IO port hard coded at 0x280. You need
540# to change src/i386/isa/stallion.c if you reconfigure this on the boards.
541# The "flags" and "msize" settings on the stli driver depend on the board:
542# EasyConnection 8/64 ISA: flags 23 msize 0x1000
543# EasyConnection 8/64 EISA: flags 24 msize 0x10000
544# EasyConnection 8/64 MCA: flags 25 msize 0x1000
545# ONboard ISA: flags 4 msize 0x10000
546# ONboard EISA: flags 7 msize 0x10000
547# ONboard MCA: flags 3 msize 0x10000
548# Brumby: flags 2 msize 0x4000
549# Stallion: flags 1 msize 0x10000
550
551device wt 1
552hint.wt.0.at="isa"
553hint.wt.0.port="0x300"
554hint.wt.0.irq="5"
555hint.wt.0.drq="1"
556device ctx
557hint.ctx.0.at="isa"
558hint.ctx.0.port="0x230"
559hint.ctx.0.maddr="0xd0000"
560device spigot 1
561hint.spigot.0.at="isa"
562hint.spigot.0.port="0xad6"
563hint.spigot.0.irq="15"
564hint.spigot.0.maddr="0xee000"
565device apm
566hint.apm.0.flags="0x20"
567device pmc
568device canbus
569device canbepm
570hint.pmc.0.at="isa"
571hint.pmc.0.port="0x8f0"
572device pmtimer # Adjust system timer at wakeup time
573device gp
574hint.gp.0.at="isa"
575hint.gp.0.port="0x2c0"
576device digi
577hint.digi.0.at="isa"
578hint.digi.0.port="0x104"
579hint.digi.0.maddr="0xd0000"
580# BIOS & FEP/OS components of device digi.
581device digi_CX
582device digi_CX_PCI
583device digi_EPCX
584device digi_EPCX_PCI
585device digi_Xe
586device digi_Xem
587device digi_Xr
588device stl
589hint.stl.0.at="isa"
590hint.stl.0.port="0x2a0"
591hint.stl.0.irq="10"
592device stli
593hint.stli.0.at="isa"
594hint.stli.0.port="0x2a0"
595hint.stli.0.maddr="0xcc000"
596hint.stli.0.flags="23"
597hint.stli.0.msize="0x1000"
598device olpt
599hint.olpt.0.at="isa"
600hint.olpt.0.port="0x040"
601
602#
603# Laptop/Notebook options:
604#
605# See also:
606# apm under `Miscellaneous hardware'
607# above.
608
609# For older notebooks that signal a powerfail condition (external
610# power supply dropped, or battery state low) by issuing an NMI:
611
612options POWERFAIL_NMI # make it beep instead of panicing
613
614#
615# PC Card/PCMCIA
616# (OLDCARD)
617#
618# card: pccard slots
619# pcic: isa/pccard bridge
620device pcic
621hint.pcic.0.at="isa"
622#hint.pcic.1.at="isa"
623device card 1
624
625#
626# PC Card/PCMCIA and Cardbus
627# (NEWCARD)
628#
629# Note that NEWCARD and OLDCARD are incompatible. Do not use both at the same
630# time.
631#
632# pccbb: pci/cardbus bridge implementing YENTA interface
633# pccard: pccard slots
634# cardbus: cardbus slots
635#device cbb
636#device pccard
637#device cardbus
638#device pcic ISA attachment currently busted
639#hint.pcic.0.at="isa"
640#hint.pcic.1.at="isa"
641
642#---------------------------------------------------------------------------
643# ISDN4BSD
644#
645# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
646#
647# i4b passive ISDN cards support contains the following hardware drivers:
648#
649# isic - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
650# iwic - Winbond W6692 PCI bus ISDN S/T interface controller
651# ifpi - AVM Fritz!Card PCI driver
652# ifpi2 - AVM Fritz!Card PCI version 2 driver
653# ihfc - Cologne Chip HFC ISA/ISA-PnP chipset driver
654# ifpnp - AVM Fritz!Card PnP driver
655# itjc - Siemens ISAC / TJNet Tiger300/320 chipset
656#
657# i4b active ISDN cards support contains the following hardware drivers:
658#
659# iavc - AVM B1 PCI, AVM B1 ISA, AVM T1
660#
661# Note that the ``options'' (if given) and ``device'' lines must BOTH
662# be uncommented to enable support for a given card !
663#
664# In addition to a hardware driver (and probably an option) the mandatory
665# ISDN protocol stack devices and the mandatory support device must be
666# enabled as well as one or more devices from the optional devices section.
667#
668#---------------------------------------------------------------------------
669# isic driver (Siemens/Infineon chipsets)
670#
671device isic
672#
673# PCI bus Cards:
674# --------------
675#
676# Cyclades Cyclom-Y PCI serial driver
677device cy 1
678options CY_PCI_FASTINTR # Use with cy_pci unless irq is shared
679hint.cy.0.at="isa"
680hint.cy.0.irq="10"
681hint.cy.0.maddr="0xd4000"
682hint.cy.0.msize="0x2000"
683#
684#---------------------------------------------------------------------------
685# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
686options ELSA_QS1PCI
687#
688#
689#---------------------------------------------------------------------------
690# ifpnp driver for AVM Fritz!Card PnP
691#
692# AVM Fritz!Card PnP
693device ifpnp
694#
695#---------------------------------------------------------------------------
696# ihfc driver for Cologne Chip ISA chipsets (experimental!)
697#
698# Teles 16.3c ISA PnP
699# AcerISDN P10 ISA PnP
700# TELEINT ISDN SPEED No.1
701device ihfc
702#
703#---------------------------------------------------------------------------
704# ifpi driver for AVM Fritz!Card PCI
705#
706# AVM Fritz!Card PCI
707device ifpi
708#
709#---------------------------------------------------------------------------
710# ifpi2 driver for AVM Fritz!Card PCI version 2
711#
712# AVM Fritz!Card PCI version 2
713device "ifpi2"
714#
715#---------------------------------------------------------------------------
716# iwic driver for Winbond W6692 chipset
717#
718# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
719device iwic
720#
721#---------------------------------------------------------------------------
722# itjc driver for Simens ISAC / TJNet Tiger300/320 chipset
723#
724# Traverse Technologies NETjet-S
725# Teles PCI-TJ
726device itjc
727#
728#---------------------------------------------------------------------------
729# iavc driver (AVM active cards, needs i4bcapi driver!)
730#
731device iavc
732#
733# AVM B1 ISA bus (PnP mode not supported!)
734# ----------------------------------------
735hint.iavc.0.at="isa"
736hint.iavc.0.port="0x150"
737hint.iavc.0.irq="5"
738#
739#---------------------------------------------------------------------------
740# ISDN Protocol Stack - mandatory for all hardware drivers
741#
742# Q.921 / layer 2 - i4b passive cards D channel handling
743device "i4bq921"
744#
745# Q.931 / layer 3 - i4b passive cards D channel handling
746device "i4bq931"
747#
748# layer 4 - i4b common passive and active card handling
749device "i4b"
750#
751#---------------------------------------------------------------------------
752# ISDN devices - mandatory for all hardware drivers
753#
754# userland driver to do ISDN tracing (for passive cards only)
755device "i4btrc" 4
756#
757# userland driver to control the whole thing
758device "i4bctl"
759#
760#---------------------------------------------------------------------------
761# ISDN devices - optional
762#
763# userland driver for access to raw B channel
764device "i4brbch" 4
765#
766# userland driver for telephony
767device "i4btel" 2
768#
769# network driver for IP over raw HDLC ISDN
770device "i4bipr" 4
771# enable VJ header compression detection for ipr i/f
772options IPR_VJ
773# enable logging of the first n IP packets to isdnd (n=32 here)
774options IPR_LOG=32
775#
776# network driver for sync PPP over ISDN; requires an equivalent
777# number of sppp device to be configured
778device "i4bisppp" 4
779#
780# B-channel interface to the netgraph subsystem
781device "i4bing" 2
782#
783# CAPI driver needed for active ISDN cards (see iavc driver above)
784device "i4bcapi"
785#
786#---------------------------------------------------------------------------
787
788#
789# Set the number of PV entries per process. Increasing this can
790# stop panics related to heavy use of shared memory. However, that can
791# (combined with large amounts of physical memory) cause panics at
792# boot time due the kernel running out of VM space.
793#
794# If you're tweaking this, you might also want to increase the sysctls
795# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
796#
797# The value below is the one more than the default.
798#
799options PMAP_SHPGPERPROC=201
800
801#
802# Change the size of the kernel virtual address space. Due to
803# constraints in loader(8) on i386, this must be a multiple of 4.
804# 256 = 1 GB of kernel address space. Increasing this also causes
805# a reduction of the address space in user processes. 512 splits
806# the 4GB cpu address space in half (2GB user, 2GB kernel).
807#
808options KVA_PAGES=260
809
810
811#####################################################################
812# ABI Emulation
813
814# Enable iBCS2 runtime support for SCO and ISC binaries
815options IBCS2
816
817# Emulate spx device for client side of SVR3 local X interface
818options SPX_HACK
819
820# Enable Linux ABI emulation
821options COMPAT_LINUX
822
823# Enable i386 a.out binary support
824options COMPAT_AOUT
825
826# Enable the linux-like proc filesystem support (requires COMPAT_LINUX
827# and PSEUDOFS)
828options LINPROCFS
829
830#
831# SysVR4 ABI emulation
832#
833# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
834# a KLD module.
835# The STREAMS network emulation code can also be compiled statically or as a
836# module. If loaded as a module, it must be loaded before the svr4 module
837# (the /usr/sbin/svr4 script does this for you). If compiling statically,
838# the `streams' device must be configured into any kernel which also
839# specifies COMPAT_SVR4. It is possible to have a statically-configured
840# STREAMS device and a dynamically loadable svr4 emulator; the /usr/sbin/svr4
841# script understands that it doesn't need to load the `streams' module under
842# those circumstances.
843# Caveat: At this time, `options KTRACE' is required for the svr4 emulator
844# (whether static or dynamic).
845#
846options COMPAT_SVR4 # build emulator statically
847options DEBUG_SVR4 # enable verbose debugging
848device streams # STREAMS network driver (required for svr4).
849
850
851#####################################################################
852# VM OPTIONS
853
854# Disable the 4 MByte page PSE CPU feature. The PSE feature allows the
855# kernel to use a 4 MByte pages to map the kernel instead of 4k pages.
856# This saves on the amount of memory needed for page tables needed to
857# map the kernel. You should only disable this feature as a temporary
858# workaround if you are having problems with it enabled.
859#
860#options DISABLE_PSE
861
862# Disable the global pages PGE CPU feature. The PGE feature allows pages
863# to be marked with the PG_G bit. TLB entries for these pages are not
864# flushed from the cache when %cr3 is reloaded. This can make context
865# switches less expensive. You should only disable this feature as a
866# temporary workaround if you are having problems with it enabled.
867#
868#options DISABLE_PG_G
869
870# KSTACK_PAGES is the number of memory pages to assign to the kernel
871# stack of each thread.
872
873options KSTACK_PAGES=3
874
875#####################################################################
876
877# More undocumented options for linting.
878# Note that documenting these are not considered an affront.
879
880options FB_INSTALL_CDEV # install a CDEV entry in /dev
881
882# PECOFF module (Win32 Execution Format)
883options PECOFF_SUPPORT
884options PECOFF_DEBUG
885
886options ENABLE_ALART
887options I4B_SMP_WORKAROUND
888options I586_PMC_GUPROF=0x70000
889options KBDIO_DEBUG=2
890options KBD_MAXRETRY=4
891options KBD_MAXWAIT=6
892options KBD_RESETDELAY=201
893
894options TIMER_FREQ=((14318182+6)/12)
895
896options VM_KMEM_SIZE
897options VM_KMEM_SIZE_MAX
898options VM_KMEM_SIZE_SCALE
899
900
901#####################################################################
902# Devices we don't want to deal with
903
904nodevice atkbdc
905nodevice atkbd
906nodevice psm
907nodevice vga
908nodevice bt
909nodevice adw
910nodevice aha
911nodevice ahb
912nodevice ahd
913nodevice mpt
914nodevice trm
915nodevice wds
916nodevice asr
917nodevice dpt
918nodevice ciss
919nodevice iir
920nodevice mly
921nodevice ida # Compaq Smart RAID
922nodevice mlx # Mylex DAC960
923nodevice amr # AMI MegaRAID
924nodevice twe # 3ware ATA RAID
925nodevice cm
926nodevice cs
927nodevice ex
928nodevice fea
929nodevice cbb
930nodevice pccard
931nodevice cardbus
932nodevice intpm
933nodevice alpm
934nodevice ichsmb
935nodevice viapm
936nodevice amdpm
937nodevice nfpm
938
939
940#####################################################################
941# Options we don't want to deal with
942
943nooption VGA_DEBUG
944nooption VGA_WIDTH90
945nooption VGA_SLOW_IOACCESS
946nooption VGA_ALT_SEQACCESS
947nooption PSM_RESETAFTERSUSPEND
948nooption PSM_HOOKRESUME
949nooption ATKBD_DFLT_KEYMAP
950nooption AHD_DEBUG
951nooption AHD_DEBUG_OPTS
952nooption AHD_REG_PRETTY_PRINT
953nooption ADW_ALLOW_MEMIO
954nooption DPT_LOST_IRQ
955nooption DPT_RESET_HBA
956nooption DPT_TIMEOUT_FACTOR
957nooption AAC_DEBUG
958nooption ACPI_MAX_THREADS
959
960
961#####################################################################
962# Make options we don't want to deal with
963
964nomakeoption ATKBD_DFLT_KEYMAP