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