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