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