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