NOTES revision 111314
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 111314 2003-02-23 13:34:21Z 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# 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# gammadrm:  3Dlabs Oxygen GMX 2000
376# mgadrm:    AGP Matrox G200, G400, G450, G550
377# tdfxdrm:   3dfx Voodoo 3/4/5 and Banshee
378# r128drm:   AGP ATI Rage 128
379# radeondrm: AGP ATI Radeon, including 7200 and 7500
380# DRM_LINUX: include linux compatibility, requires COMPAT_LINUX
381# DRM_DEBUG: include debugging code, very slow
382#
383# mga, r128, and radeon require AGP in the kernel
384
385device		gammadrm
386device		mgadrm
387device		"r128drm"
388device		radeondrm
389device		tdfxdrm
390
391options 	DRM_DEBUG
392options 	DRM_LINUX
393
394#
395# Bus mouse
396#
397device		mse
398hint.mse.0.at="isa"
399hint.mse.0.port="0x7fd9"
400hint.mse.0.irq="13"
401
402#
403# Network interfaces:
404#
405
406# ar:   Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver
407#       (requires sppp)
408# cx:   Cronyx/Sigma multiport sync/async (with Cisco or PPP framing)
409# ed:   Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
410#       HP PC Lan+, various PC Card devices (refer to etc/defauls/pccard.conf)
411#       (requires miibus)
412# el:   3Com 3C501 (slow!)
413# ie:   AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210;
414#       Intel EtherExpress
415# le:   Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100,
416#       DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422)
417# lnc:  Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and
418#       Am79C960)
419# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133
420#       (no hints needed).
421#       Olicom PCI token-ring adapters OC-3136, OC-3137, OC-3139, OC-3140,
422#       OC-3141, OC-3540, OC-3250
423# rdp:  RealTek RTL 8002-based pocket ethernet adapters
424# sbni:	Granch SBNI12-xx ISA and PCI adapters
425# sr:   RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
426# wl:	Lucent Wavelan (ISA card only).
427
428# Order for ISA/EISA devices is important here
429
430device		ar
431hint.ar.0.at="isa"
432hint.ar.0.port="0x300"
433hint.ar.0.irq="10"
434hint.ar.0.maddr="0xd0000"
435device		cx	1
436hint.cx.0.at="isa"
437hint.cx.0.port="0x240"
438hint.cx.0.irq="15"
439hint.cx.0.drq="7"
440device		ed
441#options 	ED_NO_MIIBUS		# Disable ed miibus support
442hint.ed.0.at="isa"
443hint.ed.0.port="0x280"
444hint.ed.0.irq="5"
445hint.ed.0.maddr="0xd8000"
446device		el	1
447hint.el.0.at="isa"
448hint.el.0.port="0x300"
449hint.el.0.irq="9"
450device		ie	2
451hint.ie.0.at="isa"
452hint.ie.0.port="0x300"
453hint.ie.0.irq="5"
454hint.ie.0.maddr="0xd0000"
455hint.ie.1.at="isa"
456hint.ie.1.port="0x360"
457hint.ie.1.irq="7"
458hint.ie.1.maddr="0xd0000"
459device		le	1
460hint.le.0.at="isa"
461hint.le.0.port="0x300"
462hint.le.0.irq="5"
463hint.le.0.maddr="0xd0000"
464device		lnc
465hint.lnc.0.at="isa"
466hint.lnc.0.port="0x280"
467hint.lnc.0.irq="10"
468hint.lnc.0.drq="0"
469device		rdp	1
470hint.rdp.0.at="isa"
471hint.rdp.0.port="0x378"
472hint.rdp.0.irq="7"
473hint.rdp.0.flags="2"
474device		sbni
475hint.sbni.0.at="isa"
476hint.sbni.0.port="0x210"
477hint.sbni.0.irq="0xefdead"
478hint.sbni.0.flags="0"
479device		snc
480hint.snc.0.at="isa"
481hint.snc.0.port="0x888"
482hint.snc.0.irq="6"
483hint.snc.0.maddr="0xc0000"
484device		sr
485hint.sr.0.at="isa"
486hint.sr.0.port="0x300"
487hint.sr.0.irq="5"
488hint.sr.0.maddr="0xd0000"
489device		oltr
490hint.oltr.0.at="isa"
491device		wl
492hint.wl.0.at="isa"
493hint.wl.0.port="0x300"
494options 	WLCACHE		# enables the signal-strength cache
495options 	WLDEBUG		# enables verbose debugging output
496
497#
498# Audio drivers: `pca'
499#
500# pca: PCM audio through your PC speaker
501
502device		pca
503hint.pca.0.at="isa"
504hint.pca.0.port="0x040"
505
506# 
507# SCSI host adapters:
508# 
509# ct: WD33C93[ABC] based SCSI host adapters.
510# ncv: NCR 53C500 based SCSI host adapters.
511# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
512# stg: TMC 18C30, 18C50 based SCSI host adapters.
513
514device		ct
515hint.ct.0.at="isa"
516device          ncv
517device          nsp
518device          stg
519hint.stg.0.at="isa"
520hint.stg.0.port="0x140"
521hint.stg.0.port="11"
522
523#
524# Miscellaneous hardware:
525#
526# wt: Wangtek and Archive QIC-02/QIC-36 tape drives
527# ctx: Cortex-I frame grabber
528# apm: Laptop Advanced Power Management (experimental)
529# pmtimer: Timer device driver for power management events (APM or ACPI)
530# spigot: The Creative Labs Video Spigot video-acquisition board
531# dgb: Digiboard PC/Xi and PC/Xe series driver (ALPHA QUALITY!)
532# digi: Digiboard driver
533# gp:  National Instruments AT-GPIB and AT-GPIB/TNT board, PCMCIA-GPIB
534# tw: TW-523 power line interface for use with X-10 home control products
535# stl: Stallion EasyIO and EasyConnection 8/32 (cd1400 based)
536# stli: Stallion EasyConnection 8/64, ONboard, Brumby (intelligent)
537
538# Notes on APM
539#  The flags takes the following meaning for apm0:
540#    0x0020  Statclock is broken.
541#  If apm is omitted, some systems require sysctl kern.timecounter.method=1
542#  for correct timekeeping.
543
544# Notes on the spigot:
545#  The video spigot is at 0xad6.  This port address can not be changed.
546#  The irq values may only be 10, 11, or 15
547#  I/O memory is an 8kb region.  Possible values are:
548#    0a0000, 0a2000, ..., 0fffff, f00000, f02000, ..., ffffff
549#    The start address must be on an even boundary.
550#  Add the following option if you want to allow non-root users to be able
551#  to access the spigot.  This option is not secure because it allows users
552#  direct access to the I/O page.
553#  	options SPIGOT_UNSECURE
554
555# Notes on the Specialix SI/XIO driver:
556#  The host card is memory, not IO mapped.
557#  The Rev 1 host cards use a 64K chunk, on a 32K boundary.
558#  The Rev 2 host cards use a 32K chunk, on a 32K boundary.
559#  The cards can use an IRQ of 11, 12 or 15.
560
561# Notes on the Sony Programmable I/O controller
562#  This is a temporary driver that should someday be replaced by something
563#  that hooks into the ACPI layer. The device is hooked to the PIIX4's
564#  General Device 10 decoder, which means you have to fiddle with PCI
565#  registers to map it in, even though it is otherwise treated here as
566#  an ISA device. At the moment, the driver polls, although the device
567#  is capable of generating interrupts. It largely undocumented.
568#  The port location in the hint is where you WANT the device to be
569#  mapped. 0x10a0 seems to be traditional. At the moment the jogdial
570#  is the only thing truly supported, but aparently a fair percentage
571#  of the Vaio extra features are controlled by this device.
572
573# Notes on the Stallion stl and stli drivers:
574#  See src/i386/isa/README.stl for complete instructions.
575#  This is version 0.0.5alpha, unsupported by Stallion.
576#  The stl driver has a secondary IO port hard coded at 0x280.  You need
577#     to change src/i386/isa/stallion.c if you reconfigure this on the boards.
578#  The "flags" and "msize" settings on the stli driver depend on the board:
579#	EasyConnection 8/64 ISA:     flags 23         msize 0x1000
580#	EasyConnection 8/64 EISA:    flags 24         msize 0x10000
581#	EasyConnection 8/64 MCA:     flags 25         msize 0x1000
582#	ONboard ISA:                 flags 4          msize 0x10000
583#	ONboard EISA:                flags 7          msize 0x10000
584#	ONboard MCA:                 flags 3          msize 0x10000
585#	Brumby:                      flags 2          msize 0x4000
586#	Stallion:                    flags 1          msize 0x10000
587
588# Notes on the Digiboard PC/Xi and PC/Xe series driver
589#               
590# The NDGBPORTS option specifies the number of ports controlled by the
591# dgb(4) driver.  The default value is 16 ports per device.
592#
593# The following flag values have special meanings in dgb:
594#	0x01 - alternate layout of pins
595#	0x02 - use the windowed PC/Xe in 64K mode
596
597device		wt	1
598hint.wt.0.at="isa"
599hint.wt.0.port="0x300"
600hint.wt.0.irq="5"
601hint.wt.0.drq="1"
602device		ctx	1
603hint.ctx.0.at="isa"
604hint.ctx.0.port="0x230"
605hint.ctx.0.maddr="0xd0000"
606device		spigot	1
607hint.spigot.0.at="isa"
608hint.spigot.0.port="0xad6"
609hint.spigot.0.irq="15"
610hint.spigot.0.maddr="0xee000"
611device		apm
612hint.apm.0.flags="0x20"
613device		pmc
614device		canbus
615device		canbepm
616hint.pmc.0.at="isa"
617hint.pmc.0.port="0x8f0"
618device		pmtimer			# Adjust system timer at wakeup time
619device		gp
620hint.gp.0.at="isa"
621hint.gp.0.port="0x2c0"
622device		dgb	1   
623options		NDGBPORTS=17
624hint.dgb.0.at="isa"
625hint.dgb.0.port="0x220"
626hint.dgb.0.maddr="0xfc000"
627device		digi
628hint.digi.0.at="isa"
629hint.digi.0.port="0x104"
630hint.digi.0.maddr="0xd0000"
631# BIOS & FEP/OS components of device digi.
632device		digi_CX
633device		digi_CX_PCI
634device		digi_EPCX
635device		digi_EPCX_PCI
636device		digi_Xe
637device		digi_Xem
638device		digi_Xr
639# the port and irq for tw0 are fictitious
640device		tw	1
641hint.tw.0.at="isa"
642hint.tw.0.port="0x380"
643hint.tw.0.irq="11"
644device		stl
645hint.stl.0.at="isa"
646hint.stl.0.port="0x2a0"
647hint.stl.0.irq="10"
648device		stli
649hint.stli.0.at="isa"
650hint.stli.0.port="0x2a0"
651hint.stli.0.maddr="0xcc000"
652hint.stli.0.flags="23"
653hint.stli.0.msize="0x1000"
654device		olpt
655hint.olpt.0.at="isa"
656hint.olpt.0.port="0x040"
657
658#
659# Laptop/Notebook options:
660#
661# See also:
662#  apm under `Miscellaneous hardware'
663# above.
664
665# For older notebooks that signal a powerfail condition (external
666# power supply dropped, or battery state low) by issuing an NMI:
667
668options 	POWERFAIL_NMI	# make it beep instead of panicing
669
670#
671# PC Card/PCMCIA
672# (OLDCARD)
673#
674# card: pccard slots
675# pcic: isa/pccard bridge
676device		pcic
677hint.pcic.0.at="isa"
678#hint.pcic.1.at="isa"
679device		card	1
680
681#
682# PC Card/PCMCIA and Cardbus
683# (NEWCARD)
684#
685# Note that NEWCARD and OLDCARD are incompatible.  Do not use both at the same
686# time.
687#
688# pccbb: pci/cardbus bridge implementing YENTA interface
689# pccard: pccard slots
690# cardbus: cardbus slots
691#device		cbb
692#device		pccard
693#device		cardbus
694#device		pcic		ISA attachment currently busted
695#hint.pcic.0.at="isa"
696#hint.pcic.1.at="isa"
697
698#---------------------------------------------------------------------------
699# ISDN4BSD
700#
701# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
702#
703# i4b passive ISDN cards support contains the following hardware drivers:
704#
705#	isic  - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
706#	iwic  - Winbond W6692 PCI bus ISDN S/T interface controller
707#	ifpi  - AVM Fritz!Card PCI driver
708#	ifpi2  - AVM Fritz!Card PCI version 2 driver
709#	ihfc  - Cologne Chip HFC ISA/ISA-PnP chipset driver
710#	ifpnp - AVM Fritz!Card PnP driver 
711#	itjc  - Siemens ISAC / TJNet Tiger300/320 chipset
712#
713# i4b active ISDN cards support contains the following hardware drivers:
714#
715#	iavc  - AVM B1 PCI, AVM B1 ISA, AVM T1
716#
717# Note that the ``options'' (if given) and ``device'' lines must BOTH
718# be uncommented to enable support for a given card !
719#
720# In addition to a hardware driver (and probably an option) the mandatory
721# ISDN protocol stack devices and the mandatory support device must be 
722# enabled as well as one or more devices from the optional devices section.
723#
724#---------------------------------------------------------------------------
725#	isic driver (Siemens/Infineon chipsets)
726#
727device	isic
728#
729# PCI bus Cards:
730# --------------
731#
732# Cyclades Cyclom-Y PCI serial driver
733device		cy	1
734options 	CY_PCI_FASTINTR		# Use with cy_pci unless irq is shared
735hint.cy.0.at="isa"
736hint.cy.0.irq="10"
737hint.cy.0.maddr="0xd4000"
738hint.cy.0.msize="0x2000"
739#
740#---------------------------------------------------------------------------
741# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
742options 	ELSA_QS1PCI
743#
744#
745#---------------------------------------------------------------------------
746#	ifpnp driver for AVM Fritz!Card PnP
747#
748# AVM Fritz!Card PnP
749device ifpnp
750#
751#---------------------------------------------------------------------------
752#	ihfc driver for Cologne Chip ISA chipsets (experimental!)
753#
754# Teles 16.3c ISA PnP
755# AcerISDN P10 ISA PnP
756# TELEINT ISDN SPEED No.1
757device ihfc
758#
759#---------------------------------------------------------------------------
760#	ifpi driver for AVM Fritz!Card PCI
761#
762# AVM Fritz!Card PCI
763device  ifpi
764#
765#---------------------------------------------------------------------------
766#	ifpi2 driver for AVM Fritz!Card PCI version 2
767#
768# AVM Fritz!Card PCI version 2
769device  "ifpi2"
770#
771#---------------------------------------------------------------------------
772#	iwic driver for Winbond W6692 chipset
773#
774# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
775device  iwic
776#
777#---------------------------------------------------------------------------
778#	itjc driver for Simens ISAC / TJNet Tiger300/320 chipset
779#
780# Traverse Technologies NETjet-S
781# Teles PCI-TJ
782device  itjc
783#
784#---------------------------------------------------------------------------
785#	iavc driver (AVM active cards, needs i4bcapi driver!)
786#
787device	iavc
788#
789# AVM B1 ISA bus (PnP mode not supported!)
790# ----------------------------------------
791hint.iavc.0.at="isa"
792hint.iavc.0.port="0x150"
793hint.iavc.0.irq="5"
794#
795#---------------------------------------------------------------------------
796#	ISDN Protocol Stack - mandatory for all hardware drivers
797#
798# Q.921 / layer 2 - i4b passive cards D channel handling
799device		"i4bq921"
800#
801# Q.931 / layer 3 - i4b passive cards D channel handling
802device		"i4bq931"
803#
804# layer 4 - i4b common passive and active card handling
805device		"i4b"
806#
807#---------------------------------------------------------------------------
808#	ISDN devices - mandatory for all hardware drivers
809#
810# userland driver to do ISDN tracing (for passive cards only)
811device		"i4btrc"	4
812#
813# userland driver to control the whole thing
814device		"i4bctl"
815#
816#---------------------------------------------------------------------------
817#	ISDN devices - optional
818#
819# userland driver for access to raw B channel
820device		"i4brbch"	4
821#
822# userland driver for telephony
823device		"i4btel"	2
824#
825# network driver for IP over raw HDLC ISDN
826device		"i4bipr"	4
827# enable VJ header compression detection for ipr i/f
828options 	IPR_VJ
829# enable logging of the first n IP packets to isdnd (n=32 here)
830options 	IPR_LOG=32
831#
832# network driver for sync PPP over ISDN; requires an equivalent
833# number of sppp device to be configured
834device		"i4bisppp"	4
835#
836# B-channel interface to the netgraph subsystem
837device		"i4bing"	2
838#
839# CAPI driver needed for active ISDN cards (see iavc driver above)
840device		"i4bcapi"
841#
842#---------------------------------------------------------------------------
843
844#
845# Set the number of PV entries per process.  Increasing this can
846# stop panics related to heavy use of shared memory. However, that can
847# (combined with large amounts of physical memory) cause panics at
848# boot time due the kernel running out of VM space.
849#
850# If you're tweaking this, you might also want to increase the sysctls
851# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
852#
853# The value below is the one more than the default.
854#
855options 	PMAP_SHPGPERPROC=201
856
857#
858# Change the size of the kernel virtual address space.  Due to
859# constraints in loader(8) on i386, this must be a multiple of 4.
860# 256 = 1 GB of kernel address space.  Increasing this also causes
861# a reduction of the address space in user processes.  512 splits
862# the 4GB cpu address space in half (2GB user, 2GB kernel).
863#
864options 	KVA_PAGES=260
865
866
867#####################################################################
868# ABI Emulation
869
870# Enable iBCS2 runtime support for SCO and ISC binaries
871options 	IBCS2
872
873# Emulate spx device for client side of SVR3 local X interface
874options 	SPX_HACK
875
876# Enable Linux ABI emulation
877options 	COMPAT_LINUX
878
879# Enable i386 a.out binary support
880options 	COMPAT_AOUT
881
882# Enable the linux-like proc filesystem support (requires COMPAT_LINUX
883# and PSEUDOFS)
884options 	LINPROCFS
885
886#
887# SysVR4 ABI emulation
888#
889# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
890# a KLD module.  
891# The STREAMS network emulation code can also be compiled statically or as a 
892# module.  If loaded as a module, it must be loaded before the svr4 module
893# (the /usr/sbin/svr4 script does this for you).  If compiling statically,
894# the `streams' device must be configured into any kernel which also
895# specifies COMPAT_SVR4.  It is possible to have a statically-configured 
896# STREAMS device and a dynamically loadable svr4 emulator;  the /usr/sbin/svr4
897# script understands that it doesn't need to load the `streams' module under
898# those circumstances.
899# Caveat:  At this time, `options KTRACE' is required for the svr4 emulator
900# (whether static or dynamic).  
901# 
902options 	COMPAT_SVR4	# build emulator statically
903options 	DEBUG_SVR4	# enable verbose debugging
904device		streams		# STREAMS network driver (required for svr4).
905
906
907#####################################################################
908# VM OPTIONS
909
910# Disable the 4 MByte page PSE CPU feature.  The PSE feature allows the
911# kernel to use a 4 MByte pages to map the kernel instead of 4k pages.
912# This saves on the amount of memory needed for page tables needed to
913# map the kernel.  You should only disable this feature as a temporary
914# workaround if you are having problems with it enabled.
915#
916#options 	DISABLE_PSE
917
918# Disable the global pages PGE CPU feature.  The PGE feature allows pages
919# to be marked with the PG_G bit.  TLB entries for these pages are not
920# flushed from the cache when %cr3 is reloaded.  This can make context
921# switches less expensive.  You should only disable this feature as a
922# temporary workaround if you are having problems with it enabled.
923#
924#options 	DISABLE_PG_G
925
926# KSTACK_PAGES is the number of memory pages to assign to the kernel
927# stack of each thread.
928
929options 	KSTACK_PAGES=3
930
931#####################################################################
932
933# More undocumented options for linting.
934# Note that documenting these are not considered an affront.
935
936options 	FB_INSTALL_CDEV		# install a CDEV entry in /dev
937
938# PECOFF module (Win32 Execution Format)
939options 	PECOFF_SUPPORT
940options 	PECOFF_DEBUG
941
942options 	ENABLE_ALART
943options 	I4B_SMP_WORKAROUND
944options 	I586_PMC_GUPROF=0x70000
945options 	KBDIO_DEBUG=2
946options 	KBD_MAXRETRY=4
947options 	KBD_MAXWAIT=6
948options 	KBD_RESETDELAY=201
949
950options 	TIMER_FREQ=((14318182+6)/12)
951
952options 	VM_KMEM_SIZE
953options 	VM_KMEM_SIZE_MAX
954options 	VM_KMEM_SIZE_SCALE
955
956# Yet more undocumented options for linting.
957options 	COMPAT_SUNOS
958