Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 Jun 2002 00:05:30 +0300 (IDT)
From:      ezislis <kesor@mail.ru>
To:        fs@freebsd.org
Cc:        bugs@freebsd.org
Subject:   File corruption on FAT32 partitions
Message-ID:  <20020607233917.J37924-300000@finone.km.dshapiro.org>

next in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]

I am experiencing file corruption when writing to a fat32 mounted
partition with samba.

To be more specific,

I have FreeBSD RELENG_4 (built world a two weeks ago), uname :
FreeBSD finone.km.dshapiro.org 4.6-RC FreeBSD 4.6-RC #4: Fri May 24
18:24:45 IDT 2002

Samba 2.2.4_1 from ports  (I also tested it with samba 2_2 cvs)

and on the other side I have Windows 2000 professional.


I made a little test for a demonstration of the file corruption,
I created a 16mb file of random data and made a copy of it with 'cp'.
then made a copy of it with smbclient 'get' command from localhost
then mounted the partition as a network drive in windows, and used
copy to copy the file into another subdirectory.
All this was done on a 80Gb FAT32 partition, WDC 80G HD.

> dd if=/dev/urandom of=test_file.ext bs=4096 count=4096
> ls -l
total 16392
-rw-r--r--  1 kesor  kesor  16777216 Jun  7 23:45 test_file.ext
> mkdir 1
> cp test_file.ext 1/
> ls -l 1
total 16392
-rw-r--r--  1 kesor  kesor  16777216 Jun  7 23:46 test_file.ext
> mkdir 2
> cd 2
> smbclient //localhost/storage/
Password:
Domain=[KM] OS=[Unix] Server=[Samba 2.2.5-pre]
smb: \> get test_file.ext
getting file test_file.ext of size 16777216 as test_file.ext (10584.0
kb/s) (average 10584.0 kb/s)
smb: \1\> exit
> cd ..

### Now I used windows to copy the same file to a directory named 3 ###
### and again into a directory named 4                              ###

> md5 test_file.ext 1/test_file.ext 2/test_file.ext 3/test_file.ext
4/test_file.ext
MD5 (test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (1/test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (2/test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (3/test_file.ext) = 50c065bf8ba754f4e26d169b301d2970
MD5 (4/test_file.ext) = dc78ec13ba4d3588b9577e2bdff820ee
> md5 test_file.ext 1/test_file.ext 2/test_file.ext 3/test_file.ext
4/test_file.ext
MD5 (test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (1/test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (2/test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (3/test_file.ext) = 50c065bf8ba754f4e26d169b301d2970
MD5 (4/test_file.ext) = 556e9096e238a0ac6cb2d19a85451071
> md5 test_file.ext 1/test_file.ext 2/test_file.ext 3/test_file.ext
4/test_file.ext
MD5 (test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (1/test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (2/test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (3/test_file.ext) = 50c065bf8ba754f4e26d169b301d2970
MD5 (4/test_file.ext) = 556e9096e238a0ac6cb2d19a85451071
> md5 test_file.ext 1/test_file.ext 2/test_file.ext 3/test_file.ext
4/test_file.ext
MD5 (test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (1/test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (2/test_file.ext) = f6d139b1363e9c24bfb9cee3e395a0e7
MD5 (3/test_file.ext) = 50c065bf8ba754f4e26d169b301d2970
MD5 (4/test_file.ext) = 556e9096e238a0ac6cb2d19a85451071



Thats is, as you may see it took some time to settle - but the final
resouls is that both the files that were copied via samba with windows are
corrupted.


I ran the same test on a UFS partition, exactly the same test, but it DOES
NOT corrupt the files like on a fat32 partition.


included is my kernel config file and dmesg.


please reply to to my private email, i am not subscribed to the mailing
lists.

[-- Attachment #2 --]

pid 10313 (smbd), uid 0 on /var: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 24011 (smbd), uid 1000 on /mnt/da1: file system full
pid 851 (eggdrop-1.6.10), uid 1003 on /mnt/da1: file system full
pid 851 (eggdrop-1.6.10), uid 1003 on /mnt/da1: file system full
pid 851 (eggdrop-1.6.10), uid 1003 on /mnt/da1: file system full
pid 37847 (cp), uid 1003 on /mnt/da1: file system full
pid 851 (eggdrop-1.6.10), uid 1003 on /mnt/da1: file system full
pid 37657 (smbd), uid 1000 on /mnt/da1: file system full
pid 37657 (smbd), uid 1000 on /mnt/da1: file system full
pid 37657 (smbd), uid 1000 on /mnt/da1: file system full

[-- Attachment #3 --]
#
# LINT -- config file for checking all the sources, tries to pull in
#	as much of the source tree as it can.
#
# $FreeBSD: src/sys/i386/conf/LINT,v 1.749.2.106 2002/03/11 01:23:05 dd Exp $
#
# NB: You probably don't want to try running a kernel built from this
# file.  Instead, you should start from GENERIC, and add options from
# this file as required.
#

#
# This directive is mandatory; it defines the architecture to be
# configured for; in this case, the 386 family based IBM-PC and
# compatibles.
#
machine		i386

#
# This is the ``identification'' of the kernel.  Usually this should
# be the same as the name of your kernel.
#
ident		FINONE

#
# The `maxusers' parameter controls the static sizing of a number of
# internal system tables by a formula defined in subr_param.c.  Setting
# maxusers to 0 will cause the system to auto-size based on physical
# memory.
#
maxusers	0
#64

#
# The `makeoptions' parameter allows variables to be passed to the
# generated Makefile in the build area.
#
# CONF_CFLAGS gives some extra compiler flags that are added to ${CFLAGS}
# after most other flags.  Here we use it to inhibit use of non-optimal
# gcc builtin functions (e.g., memcmp).
#
# DEBUG happens to be magic.
# The following is equivalent to 'config -g KERNELNAME' and creates
# 'kernel.debug' compiled with -g debugging as well as a normal
# 'kernel'.  Use 'make install.debug' to install the debug kernel
# but that isn't normally necessary as the debug symbols are not loaded
# by the kernel and are not useful there anyway.
#
# KERNEL can be overridden so that you can change the default name of your
# kernel.
#
# MODULES_OVERRIDE can be used to limit modules built to a specific list.
#
#makeoptions	CONF_CFLAGS=-fno-builtin  #Don't allow use of memcmp, etc.
#makeoptions	DEBUG=-g		#Build kernel with gdb(1) debug symbols
#makeoptions	KERNEL=foo		#Build kernel "foo" and install "/foo"
# Only build Linux API modules and plus those parts of the sound system I need.
#makeoptions	MODULES_OVERRIDE="linux sound/snd sound/pcm sound/driver/maestro3"

#
# Certain applications can grow to be larger than the 128M limit
# that FreeBSD initially imposes.  Below are some options to
# allow that limit to grow to 256MB, and can be increased further
# with changing the parameters.  MAXDSIZ is the maximum that the
# limit can be set to, and the DFLDSIZ is the default value for
# the limit.  MAXSSIZ is the maximum that the stack limit can be
# set to.  You might want to set the default lower than the max, 
# and explicitly set the maximum with a shell command for processes
# that regularly exceed the limit like INND.
#
#options 	MAXDSIZ="(256*1024*1024)"
#options 	MAXSSIZ="(256*1024*1024)"
#options 	DFLDSIZ="(256*1024*1024)"

#
# BLKDEV_IOSIZE sets the default block size used in user block
# device I/O.  Note that this value will be overriden by the label
# when specifying a block device from a label with a non-0
# partition blocksize.  The default is PAGE_SIZE.
#
options 	BLKDEV_IOSIZE=8192

# Options for the VM subsystem.
options		PQ_CACHESIZE=1024	# color for 512k/16k cache
# Deprecated options supported for backwards compatibility.
#options 	PQ_NOOPT		# No coloring
#options 	PQ_LARGECACHE		# color for 512k/16k cache
#options 	PQ_HUGECACHE		# color for 1024k/16k cache
#options 	PQ_MEDIUMCACHE		# color for 256k/16k cache
#options 	PQ_NORMALCACHE		# color for 64k/16k cache

# This allows you to actually store this configuration file into
# the kernel binary itself, where it may be later read by saying:
#    strings -n 3 /kernel | sed -n 's/^___//p' > MYKERNEL
#
#options 	INCLUDE_CONFIG_FILE     # Include this file in kernel

#
# The root device and filesystem type can be compiled in;
# this provides a fallback option if the root device cannot
# be correctly guessed by the bootstrap code, or an override if
# the RB_DFLTROOT flag (-r) is specified when booting the kernel.
#
#options 	ROOTDEVNAME=\"ufs:da0s2e\"


#####################################################################
# SMP OPTIONS:
#
# SMP enables building of a Symmetric MultiProcessor Kernel.
# APIC_IO enables the use of the IO APIC for Symmetric I/O.
#
# Notes:
#
#  An SMP kernel will ONLY run on an Intel MP spec. qualified motherboard.
#
#  Be sure to disable 'cpu I386_CPU' && 'cpu I486_CPU' for SMP kernels.
#
#  Check the 'Rogue SMP hardware' section to see if additional options
#   are required by your hardware.
#

# Mandatory:
#options 	SMP			# Symmetric MultiProcessor Kernel
#options 	APIC_IO			# Symmetric (APIC) I/O

#
# Rogue SMP hardware:
#

# Bridged PCI cards:
#
# The MP tables of most of the current generation MP motherboards
#  do NOT properly support bridged PCI cards.  To use one of these
#  cards you should refer to ???


#####################################################################
# CPU OPTIONS

#
# You must specify at least one CPU (the one you intend to run on);
# deleting the specification for CPUs you don't need to use may make
# parts of the system run faster.  This is especially true removing
# I386_CPU.
#
#cpu		I386_CPU
#cpu		I486_CPU
#cpu		I586_CPU		# aka Pentium(tm)
cpu		I686_CPU		# aka Pentium Pro(tm)

#
# Options for CPU features.
#
# CPU_BLUELIGHTNING_FPU_OP_CACHE enables FPU operand cache on IBM
# BlueLightning CPU.  It works only with Cyrix FPU, and this option
# should not be used with Intel FPU.
#
# CPU_BLUELIGHTNING_3X enables triple-clock mode on IBM Blue Lightning
# CPU if CPU supports it. The default is double-clock mode on
# BlueLightning CPU box.
#
# CPU_BTB_EN enables branch target buffer on Cyrix 5x86 (NOTE 1).
#
# CPU_DIRECT_MAPPED_CACHE sets L1 cache of Cyrix 486DLC CPU in direct
# mapped mode.  Default is 2-way set associative mode.
#
# CPU_CYRIX_NO_LOCK enables weak locking for the entire address space
# of Cyrix 6x86 and 6x86MX CPUs by setting the NO_LOCK bit of CCR1.
# Otherwise, the NO_LOCK bit of CCR1 is cleared.  (NOTE 3)
#
# CPU_DISABLE_5X86_LSSER disables load store serialize (i.e. enables
# reorder).  This option should not be used if you use memory mapped
# I/O device(s).
#
# CPU_ENABLE_SSE enables SSE/MMX2 instructions support.
#
# CPU_FASTER_5X86_FPU enables faster FPU exception handler.
#
# CPU_I486_ON_386 enables CPU cache on i486 based CPU upgrade products
# for i386 machines.
#
# CPU_IORT defines I/O clock delay time (NOTE 1).  Default values of
# I/O clock delay time on Cyrix 5x86 and 6x86 are 0 and 7,respectively
# (no clock delay).
#
# CPU_L2_LATENCY specifed the L2 cache latency value.  This option is used
# only when CPU_PPRO2CELERON is defined and Mendocino Celeron is detected.
# The default value is 5.
#
# CPU_LOOP_EN prevents flushing the prefetch buffer if the destination
# of a jump is already present in the prefetch buffer on Cyrix 5x86(NOTE
# 1).
#
# CPU_PPRO2CELERON enables L2 cache of Mendocino Celeron CPUs.  This option
# is useful when you use Socket 8 to Socket 370 converter, because most Pentium
# Pro BIOSs do not enable L2 cache of Mendocino Celeron CPUs.
#
# CPU_RSTK_EN enables return stack on Cyrix 5x86 (NOTE 1).
#
# CPU_SUSP_HLT enables suspend on HALT.  If this option is set, CPU
# enters suspend mode following execution of HALT instruction.
#
# CPU_WT_ALLOC enables write allocation on Cyrix 6x86/6x86MX and AMD
# K5/K6/K6-2 cpus.
#
# CYRIX_CACHE_WORKS enables CPU cache on Cyrix 486 CPUs with cache
# flush at hold state.
#
# CYRIX_CACHE_REALLY_WORKS enables (1) CPU cache on Cyrix 486 CPUs
# without cache flush at hold state, and (2) write-back CPU cache on
# Cyrix 6x86 whose revision < 2.7 (NOTE 2).
#
# NO_F00F_HACK disables the hack that prevents Pentiums (and ONLY
# Pentiums) from locking up when a LOCK CMPXCHG8B instruction is
# executed.  This option is only needed if I586_CPU is also defined,
# and should be included for any non-Pentium CPU that defines it.
#
# NO_MEMORY_HOLE is an optimisation for systems with AMD K6 processors
# which indicates that the 15-16MB range is *definitely* not being
# occupied by an ISA memory hole.
#
# NOTE 1: The options, CPU_BTB_EN, CPU_LOOP_EN, CPU_IORT,
# CPU_LOOP_EN and CPU_RSTK_EN should not be used because of CPU bugs.
# These options may crash your system.
#
# NOTE 2: If CYRIX_CACHE_REALLY_WORKS is not set, CPU cache is enabled
# in write-through mode when revision < 2.7.  If revision of Cyrix
# 6x86 >= 2.7, CPU cache is always enabled in write-back mode.
#
# NOTE 3: This option may cause failures for software that requires
# locked cycles in order to operate correctly.
#
#options 	CPU_BLUELIGHTNING_FPU_OP_CACHE
#options 	CPU_BLUELIGHTNING_3X
#options 	CPU_BTB_EN
#options 	CPU_DIRECT_MAPPED_CACHE
#options 	CPU_DISABLE_5X86_LSSER
options 	CPU_ENABLE_SSE
#options 	CPU_FASTER_5X86_FPU
#options 	CPU_I486_ON_386
#options 	CPU_IORT
#options 	CPU_L2_LATENCY=5
#options 	CPU_LOOP_EN
#options 	CPU_PPRO2CELERON
#options 	CPU_RSTK_EN
#options 	CPU_SUSP_HLT
#options 	CPU_WT_ALLOC
#options 	CYRIX_CACHE_WORKS
#options 	CYRIX_CACHE_REALLY_WORKS
#options 	NO_F00F_HACK

#
# A math emulator is mandatory if you wish to run on hardware which
# does not have a floating-point processor.  Pick either the original,
# bogus (but freely-distributable) math emulator, or a much more
# fully-featured but GPL-licensed emulator taken from Linux.
#
#options 	MATH_EMULATE		#Support for x87 emulation
# Don't enable both of these in a real config.
#options 	GPL_MATH_EMULATE	#Support for x87 emulation via
					#new math emulator


#####################################################################
# COMPATIBILITY OPTIONS                                             

#
# Implement system calls compatible with 4.3BSD and older versions of
# FreeBSD.  You probably do NOT want to remove this as much current code
# still relies on the 4.3 emulation.
#
options 	COMPAT_43

#
# Allow applications running in user space to control the Local Descriptor
# Table (LDT).  This is required by some ports.  Future versions of FreeBSD
# may require this option for some programs in the base system.
#
options 	USER_LDT		#allow user-level control of i386 ldt

#
# These three options provide support for System V Interface
# Definition-style interprocess communication, in the form of shared
# memory, semaphores, and message queues, respectively.
#
# System V shared memory and tunable parameters
options 	SYSVSHM		# include support for shared memory
options 	SHMMAXPGS=1025	# max amount of shared memory pages (4k on i386)
options 	SHMALL=1025	# max amount of shared memory (bytes)
options 	SHMMAX="(SHMMAXPGS*PAGE_SIZE+1)"
				# max shared memory segment size (bytes)
options 	SHMMIN=2	# min shared memory segment size (bytes)
options 	SHMMNI=33	# max number of shared memory identifiers
options 	SHMSEG=9	# max shared memory segments per process

# System V semaphores and tunable parameters
options 	SYSVSEM		# include support for semaphores
options 	SEMMAP=31	# amount of entries in semaphore map
options 	SEMMNI=11	# number of semaphore identifiers in the system
options 	SEMMNS=61	# number of semaphores in the system
options 	SEMMNU=31	# number of undo structures in the system
options 	SEMMSL=61	# max number of semaphores per id
options 	SEMOPM=101	# max number of operations per semop call
options 	SEMUME=11	# max number of undo entries per process

# System V message queues and tunable parameters
options 	SYSVMSG		# include support for message queues
options 	MSGMNB=2049	# max characters per message queue
options 	MSGMNI=41	# max number of message queue identifiers
options 	MSGSEG=2049	# max number of message segments in the system
options 	MSGSSZ=16	# size of a message segment MUST be power of 2
options 	MSGTQL=41	# max amount of messages in the system


#####################################################################
# DEBUGGING OPTIONS

#
# Enable the kernel debugger.
#
#options 	DDB

#
# Don't drop into DDB for a panic. Intended for unattended operation
# where you may want to drop to DDB from the console, but still want
# the machine to recover from a panic
#
#options 	DDB_UNATTENDED

#
# If using GDB remote mode to debug the kernel, there's a non-standard
# extension to the remote protocol that can be used to use the serial
# port as both the debugging port and the system console.  It's non-
# standard and you're on your own if you enable it.  See also the
# "remotechat" variables in the FreeBSD specific version of gdb.
#
#options 	GDB_REMOTE_CHAT

#
# KTRACE enables the system-call tracing facility ktrace(2).
#
#options 	KTRACE			#kernel tracing

#
# The INVARIANTS option is used in a number of source files to enable
# extra sanity checking of internal structures.  This support is not
# enabled by default because of the extra time it would take to check
# for these conditions, which can only occur as a result of
# programming errors.
#
#options 	INVARIANTS

#
# The INVARIANT_SUPPORT option makes us compile in support for
# verifying some of the internal structures.  It is a prerequisite for
# 'INVARIANTS', as enabling 'INVARIANTS' will make these functions be
# called.  The intent is that you can set 'INVARIANTS' for single
# source files (by changing the source file or specifying it on the
# command line) if you have 'INVARIANT_SUPPORT' enabled.
#
#options 	INVARIANT_SUPPORT

#
# The DIAGNOSTIC option is used to enable extra debugging information
# from some parts of the kernel.  As this makes everything more noisy,
# it is disabled by default.
#
#options 	DIAGNOSTIC

#
# PERFMON causes the driver for Pentium/Pentium Pro performance counters
# to be compiled.  See perfmon(4) for more information.
#
#options 	PERFMON


#
# This option let some drivers co-exist that can't co-exist in a running
# system.  This is used to be able to compile all kernel code in one go for
# quality assurance purposes (like this file, which the option takes it name
# from.)
#
#options 	COMPILING_LINT


# XXX - this doesn't belong here.
# Allow ordinary users to take the console - this is useful for X.
options 	UCONSOLE

# XXX - this doesn't belong here either
options 	USERCONFIG		#boot -c editor
#options 	INTRO_USERCONFIG	#imply -c and show intro screen
#options 	VISUAL_USERCONFIG	#visual boot -c editor


#####################################################################
# NETWORKING OPTIONS

#
# Protocol families:
#  Only the INET (Internet) family is officially supported in FreeBSD.
#  Source code for the NS (Xerox Network Service) is provided for amusement
#  value.
#
options 	INET			#Internet communications protocols
options 	INET6			#IPv6 communications protocols
options 	IPSEC			#IP security
#options 	IPSEC_ESP		#IP security (crypto; define w/ IPSEC)
#options 	IPSEC_DEBUG		#debug for IP security

#options 	IPX			#IPX/SPX communications protocols
#options 	IPXIP			#IPX in IP encapsulation (not available)
#options 	IPTUNNEL		#IP in IPX encapsulation (not available)

#options 	NCP			#NetWare Core protocol

#options 	NETATALK		#Appletalk communications protocols

# These are currently broken but are shipped due to interest.
#options 	NS			#Xerox NS protocols
#options 	NSIP			#XNS over IP

#
# SMB/CIFS requester
# NETSMB enables support for SMB protocol, it requires LIBMCHAIN and LIBICONV
# options.
# NETSMBCRYPTO enables support for encrypted passwords.
#options 	NETSMB			#SMB/CIFS requester
#options 	NETSMBCRYPTO		#encrypted password support for SMB

# mchain library. It can be either loaded as KLD or compiled into kernel
#options 	LIBMCHAIN		#mbuf management library

# netgraph(4). Enable the base netgraph code with the NETGRAPH option.
# Individual node types can be enabled with the corresponding option
# listed below; however, this is not strictly necessary as netgraph
# will automatically load the corresponding KLD module if the node type
# is not already compiled into the kernel. Each type below has a
# corresponding man page, e.g., ng_async(8).
#options 	NETGRAPH		#netgraph(4) system
#options 	NETGRAPH_ASYNC
#options 	NETGRAPH_BPF
#options 	NETGRAPH_CISCO
#options 	NETGRAPH_ECHO
#options 	NETGRAPH_ETHER
#options 	NETGRAPH_FRAME_RELAY
#options 	NETGRAPH_HOLE
#options 	NETGRAPH_IFACE
#options 	NETGRAPH_KSOCKET
#options 	NETGRAPH_LMI
# MPPC compression requires proprietary files (not included)
#options 	NETGRAPH_MPPC_COMPRESSION
#options 	NETGRAPH_MPPC_ENCRYPTION
#options 	NETGRAPH_ONE2MANY
#options 	NETGRAPH_PPP
#options 	NETGRAPH_PPPOE
#options 	NETGRAPH_PPTPGRE
#options 	NETGRAPH_RFC1490
#options 	NETGRAPH_SOCKET
#options 	NETGRAPH_TEE
#options 	NETGRAPH_TTY
#options 	NETGRAPH_UI
#options 	NETGRAPH_VJC

#device		mn	# Munich32x/Falc54 Nx64kbit/sec cards.

#
# Network interfaces:
#  The `loop' pseudo-device is MANDATORY when networking is enabled.
#  The `ether' pseudo-device provides generic code to handle
#  Ethernets; it is MANDATORY when a Ethernet device driver is
#  configured or token-ring is enabled.
#  The 'fddi' pseudo-device provides generic code to support FDDI.
#  The `arcnet' pseudo-device provides generic code to support Arcnet.
#  The `sppp' pseudo-device serves a similar role for certain types
#  of synchronous PPP links (like `cx', `ar').
#  The `sl' pseudo-device implements the Serial Line IP (SLIP) service.
#  The `ppp' pseudo-device implements the Point-to-Point Protocol.
#  The `bpf' pseudo-device enables the Berkeley Packet Filter.  Be
#  aware of the legal and administrative consequences of enabling this
#  option.  The number of devices determines the maximum number of
#  simultaneous BPF clients programs runnable.
#  The `disc' pseudo-device implements a minimal network interface,
#  which throws away all packets sent and never receives any.  It is
#  included for testing purposes.  This shows up as the 'ds' interface.
#  The `tun' pseudo-device implements (user-)ppp and nos-tun
#  The `gif' pseudo-device implements IPv6 over IP4 tunneling,
#  IPv4 over IPv6 tunneling, IPv4 over IPv4 tunneling and
#  IPv6 over IPv6 tunneling.
#  The `faith' pseudo-device captures packets sent to it and diverts them
#  to the IPv4/IPv6 translation daemon.
#  The `stf' device implements 6to4 encapsulation.
#  The `ef' pseudo-device provides support for multiple ethernet frame types
#  specified via ETHER_* options. See ef(4) for details.
#
# The PPP_BSDCOMP option enables support for compress(1) style entire
# packet compression, the PPP_DEFLATE is for zlib/gzip style compression.
# PPP_FILTER enables code for filtering the ppp data stream and selecting
# events for resetting the demand dial activity timer - requires bpf.
# See pppd(8) for more details.
#
pseudo-device	ether			#Generic Ethernet
#pseudo-device	vlan	1		#VLAN support
#pseudo-device	token			#Generic TokenRing
#pseudo-device	fddi			#Generic FDDI
#pseudo-device	arcnet			#Generic Arcnet
#pseudo-device	sppp			#Generic Synchronous PPP
pseudo-device	loop			#Network loopback device
pseudo-device	bpf			#Berkeley packet filter
#pseudo-device	disc			#Discard device (ds0, ds1, etc)
#pseudo-device	tun			#Tunnel driver (ppp(8), nos-tun(8))
#pseudo-device	sl	2		#Serial Line IP
#pseudo-device	ppp	2		#Point-to-point protocol
#options 	PPP_BSDCOMP		#PPP BSD-compress support
#options 	PPP_DEFLATE		#PPP zlib/deflate/gzip support
#options 	PPP_FILTER		#enable bpf filtering (needs bpf)

#pseudo-device	ef			# Multiple ethernet frames support
#options 	ETHER_II		# enable Ethernet_II frame
#options 	ETHER_8023		# enable Ethernet_802.3 (Novell) frame
#options 	ETHER_8022		# enable Ethernet_802.2 frame
#options 	ETHER_SNAP		# enable Ethernet_802.2/SNAP frame

# for IPv6
#pseudo-device	gif			#IPv6 and IPv4 tunneling
#pseudo-device	faith	1		#for IPv6 and IPv4 translation
#pseudo-device	stf			#6to4 IPv6 over IPv4 encapsulation

#
# Internet family options:
#
# MROUTING enables the kernel multicast packet forwarder, which works
# with mrouted(8).
#
# IPFIREWALL enables support for IP firewall construction, in
# conjunction with the `ipfw' program.  IPFIREWALL_VERBOSE sends
# logged packets to the system logger.  IPFIREWALL_VERBOSE_LIMIT
# limits the number of times a matching entry can be logged.
#
# WARNING:  IPFIREWALL defaults to a policy of "deny ip from any to any"
# and if you do not add other rules during startup to allow access,
# YOU WILL LOCK YOURSELF OUT.  It is suggested that you set firewall_type=open
# in /etc/rc.conf when first enabling this feature, then refining the
# firewall rules in /etc/rc.firewall after you've tested that the new kernel
# feature works properly.
#
# IPFIREWALL_DEFAULT_TO_ACCEPT causes the default rule (at boot) to
# allow everything.  Use with care, if a cracker can crash your
# firewall machine, they can get to your protected machines.  However,
# if you are using it as an as-needed filter for specific problems as
# they arise, then this may be for you.  Changing the default to 'allow'
# means that you won't get stuck if the kernel and /sbin/ipfw binary get
# out of sync.
#
# IPDIVERT enables the divert IP sockets, used by ``ipfw divert''
#
# IPSTEALTH enables code to support stealth forwarding (i.e., forwarding
# packets without touching the ttl).  This can be useful to hide firewalls
# from traceroute and similar tools.
#
# TCPDEBUG is undocumented.
#
#options 	MROUTING		# Multicast routing
#options 	IPFIREWALL		#firewall
#options 	IPFIREWALL_VERBOSE	#enable logging to syslogd(8)
#options 	IPFIREWALL_FORWARD	#enable transparent proxy support
#options 	IPFIREWALL_VERBOSE_LIMIT=100	#limit verbosity
#options 	IPFIREWALL_DEFAULT_TO_ACCEPT	#allow everything by default
#options 	IPV6FIREWALL		#firewall for IPv6
#options 	IPV6FIREWALL_VERBOSE
#options 	IPV6FIREWALL_VERBOSE_LIMIT=100
#options 	IPV6FIREWALL_DEFAULT_TO_ACCEPT
#options 	IPDIVERT		#divert sockets
#options 	IPFILTER		#ipfilter support
#options 	IPFILTER_LOG		#ipfilter logging
#options		IPFILTER_DEFAULT_BLOCK	#block all packets by default
#options 	IPSTEALTH		#support for stealth forwarding
#options 	TCPDEBUG

# RANDOM_IP_ID causes the ID field in IP packets to be randomized
# instead of incremented by 1 with each packet generated.  This
# option closes a minor information leak which allows remote
# observers to determine the rate of packet generation on the
# machine by watching the counter.
#options		RANDOM_IP_ID

# Statically Link in accept filters
#options                ACCEPT_FILTER_DATA
#options                ACCEPT_FILTER_HTTP

#
# TCP_DROP_SYNFIN adds support for ignoring TCP packets with SYN+FIN. This
# prevents nmap et al. from identifying the TCP/IP stack, but breaks support
# for RFC1644 extensions and is not recommended for web servers.
#
#options 	TCP_DROP_SYNFIN		#drop TCP packets with SYN+FIN

# ICMP_BANDLIM enables icmp error response bandwidth limiting.   You
# typically want this option as it will help protect the machine from
# D.O.S. packet attacks.
#
#options 	ICMP_BANDLIM

# DUMMYNET enables the "dummynet" bandwidth limiter. You need
# IPFIREWALL as well. See the dummynet(4) and ipfw(8) manpages for more info.
# When you run DUMMYNET it is advisable to also have "options HZ=1000"
# to achieve a smoother scheduling of the traffic.
#
# BRIDGE enables bridging between ethernet cards -- see bridge(4).
# You can use IPFIREWALL and DUMMYNET together with bridging.
#
#options 	DUMMYNET
#options 	BRIDGE

#
# ATM (HARP version) options
#
# ATM_CORE includes the base ATM functionality code.  This must be included
#	for ATM support.
#
# ATM_IP includes support for running IP over ATM.
#
# At least one (and usually only one) of the following signalling managers
# must be included (note that all signalling managers include PVC support):
# ATM_SIGPVC includes support for the PVC-only signalling manager `sigpvc'.
# ATM_SPANS includes support for the `spans' signalling manager, which runs
#	the FORE Systems's proprietary SPANS signalling protocol.
# ATM_UNI includes support for the `uni30' and `uni31' signalling managers,
#	which run the ATM Forum UNI 3.x signalling protocols.
#
# The `hea' driver provides support for the Efficient Networks, Inc.
# ENI-155p ATM PCI Adapter.
#
# The `hfa' driver provides support for the FORE Systems, Inc.
# PCA-200E ATM PCI Adapter.
#
#options 	ATM_CORE		#core ATM protocol family
#options 	ATM_IP			#IP over ATM support
#options 	ATM_SIGPVC		#SIGPVC signalling manager
#options 	ATM_SPANS		#SPANS signalling manager
#options 	ATM_UNI			#UNI signalling manager
#device		hea			#Efficient ENI-155p ATM PCI
#device		hfa			#FORE PCA-200E ATM PCI

# DEVICE_POLLING adds support for mixed interrupt-polling handling
# of network device drivers, which has significant benefits in terms
# of robustness to overloads and responsivity, as well as permitting
# accurate scheduling of the CPU time between kernel network processing
# and other activities. The drawback is a moderate (up to 1/HZ seconds)
# potential increase in response times.
# It is strongly recommended to use HZ=1000 or 2000 with DEVICE_POLLING
# to achieve smoother behaviour.
# Additionally, you can enable/disable polling at runtime with the
# sysctl variable kern.polling.enable (defaults off), and select
# the CPU fraction reserved to userland with the sysctl variable
# kern.polling.user_frac (default 50, range 0..100).
#
# Only the "dc" "fxp" and "sis" devices support this mode of operation at
# the time of this writing.
 
#options         DEVICE_POLLING


#####################################################################
# FILESYSTEM OPTIONS

#
# Only the root, /usr, and /tmp filesystems need be statically
# compiled; everything else will be automatically loaded at mount
# time.  (Exception: the UFS family---FFS, and MFS --- cannot
# currently be demand-loaded.)  Some people still prefer to statically
# compile other filesystems as well.
#
# NB: The NULL, PORTAL, UMAP and UNION filesystems are known to be
# buggy, and WILL panic your system if you attempt to do anything with
# them.  They are included here as an incentive for some enterprising
# soul to sit down and fix them.
#

# One of these is mandatory:
options 	FFS			#Fast filesystem
#options 	MFS			#Memory File System
#options 	NFS			#Network File System

# The rest are optional:
#options 	NFS_NOSERVER		#Disable the NFS-server code.
#options 	CD9660			#ISO 9660 filesystem
#options 	FDESC			#File descriptor filesystem
#options 	KERNFS			#Kernel filesystem
#options 	MSDOSFS			#MS DOS File System
#options 	NTFS			#NT File System
#options 	NULLFS			#NULL filesystem
#options 	NWFS			#NetWare filesystem
#options 	PORTAL			#Portal filesystem
#options 	PROCFS			#Process filesystem
#options		SMBFS			#SMB/CIFS filesystem
#options 	UMAPFS			#UID map filesystem
#options 	UNION			#Union filesystem
# The xFS_ROOT options REQUIRE the associated ``options xFS''
#options 	CD9660_ROOT		#CD-ROM usable as root device
options 	FFS_ROOT		#FFS usable as root device
#options 	NFS_ROOT		#NFS usable as root device

# Soft updates is technique for improving file system speed and
# making abrupt shutdown less risky.
options 	SOFTUPDATES

# Directory hashing improves the speed of operations on very large
# directories at the expense of some memory.
options		UFS_DIRHASH

# Make space in the kernel for a root filesystem on a md device.
# Define to the number of kilobytes to reserve for the filesystem.
#options 	MD_ROOT_SIZE=10

# Make the md device a potential root device, either with preloaded
# images of type mfs_root or md_root.
#options 	MD_ROOT

# Specify double the default maximum size for malloc(9)-backed md devices.
#options 	MD_NSECT=40000

# Allow this many swap-devices.
#
# In order to manage swap, the system must reserve bitmap space that
# scales with the largest mounted swap device multiplied by NSWAPDEV, 
# irregardless of whether other swap devices exist or not.  So it
# is not a good idea to make this value too large.
#options 	NSWAPDEV=5

# Disk quotas are supported when this option is enabled.
#options 	QUOTA			#enable disk quotas

# If you are running a machine just as a fileserver for PC and MAC
# users, using SAMBA or Netatalk, you may consider setting this option
# and keeping all those users' directories on a filesystem that is
# mounted with the suiddir option. This gives new files the same
# ownership as the directory (similar to group). It's a security hole
# if you let these users run programs, so confine it to file-servers
# (but it'll save you lots of headaches in those cases). Root owned
# directories are exempt and X bits are cleared. The suid bit must be
# set on the directory as well; see chmod(1) PC owners can't see/set
# ownerships so they keep getting their toes trodden on. This saves
# you all the support calls as the filesystem it's used on will act as
# they expect: "It's my dir so it must be my file".
#
#options 	SUIDDIR

# NFS options:
#options 	NFS_MINATTRTIMO=3	# VREG attrib cache timeout in sec
#options 	NFS_MAXATTRTIMO=60
#options 	NFS_MINDIRATTRTIMO=30	# VDIR attrib cache timeout in sec
#options 	NFS_MAXDIRATTRTIMO=60
#options 	NFS_GATHERDELAY=10	# Default write gather delay (msec)
#options 	NFS_UIDHASHSIZ=29	# Tune the size of nfssvc_sock with this
#options 	NFS_WDELAYHASHSIZ=16	# and with this
#options 	NFS_MUIDHASHSIZ=63	# Tune the size of nfsmount with this
#options 	NFS_DEBUG		# Enable NFS Debugging

# Coda stuff:
#options 	CODA			#CODA filesystem.
#pseudo-device	vcoda	4		#coda minicache <-> venus comm.

#
# Add support for the EXT2FS filesystem of Linux fame.  Be a bit
# careful with this - the ext2fs code has a tendency to lag behind
# changes and not be exercised very much, so mounting read/write could
# be dangerous (and even mounting read only could result in panics.)
#
#options 	EXT2FS

# Use real implementations of the aio_* system calls.  There are numerous
# stability and security issues in the current aio code that make it
# unsuitable for inclusion on machines with untrusted local users.
#options 	VFS_AIO


#####################################################################
# POSIX P1003.1B

# Real time extensions added in the 1993 Posix
# P1003_1B: Infrastructure
# _KPOSIX_PRIORITY_SCHEDULING: Build in _POSIX_PRIORITY_SCHEDULING
# _KPOSIX_VERSION:             Version kernel is built for

options 	P1003_1B
options 	_KPOSIX_PRIORITY_SCHEDULING
options 	_KPOSIX_VERSION=199309L


#####################################################################
# CLOCK OPTIONS

# The granularity of operation is controlled by the kernel option HZ whose
# default value (100) means a granularity of 10ms (1s/HZ).
# Some subsystems, such as DUMMYNET or DEVICE_POLLING, might benefit from
# a smaller granularity such as 1ms or less.
# Consider, however, that reducing the granularity too much might
# cause excessive overhead in clock interrupt processing,
# potentially causing ticks to be missed and thus actually reducing
# the accuracy of operation.

options 	HZ=1000

# The following options are used for debugging clock behavior only, and
# should not be used for production systems.
# 
# CLK_CALIBRATION_LOOP will run the clock calibration loop at startup
# until the user presses a key.

#options 	CLK_CALIBRATION_LOOP

# The following two options measure the frequency of the corresponding
# clock relative to the RTC (onboard mc146818a).

#options 	CLK_USE_I8254_CALIBRATION
#options 	CLK_USE_TSC_CALIBRATION


#####################################################################
# SCSI DEVICES

# SCSI DEVICE CONFIGURATION

# The SCSI subsystem consists of the `base' SCSI code, a number of
# high-level SCSI device `type' drivers, and the low-level host-adapter
# device drivers.  The host adapters are listed in the ISA and PCI
# device configuration sections below.
#
# Beginning with FreeBSD 2.0.5 you can wire down your SCSI devices so
# that a given bus, target, and LUN always come on line as the same
# device unit.  In earlier versions the unit numbers were assigned
# in the order that the devices were probed on the SCSI bus.  This
# means that if you removed a disk drive, you may have had to rewrite
# your /etc/fstab file, and also that you had to be careful when adding
# a new disk as it may have been probed earlier and moved your device
# configuration around.

# This old behavior is maintained as the default behavior.  The unit
# assignment begins with the first non-wired down unit for a device
# type.  For example, if you wire a disk as "da3" then the first
# non-wired disk will be assigned da4.

# The syntax for wiring down devices is:

# device	scbus0 at ahc0		# Single bus device
# device	scbus1 at ahc1 bus 0	# Single bus device
# device	scbus3 at ahc2 bus 0	# Twin bus device
# device	scbus2 at ahc2 bus 1	# Twin bus device
# device 	da0 at scbus0 target 0 unit 0
# device	da1 at scbus3 target 1
# device	da2 at scbus2 target 3
# device	sa1 at scbus1 target 6
# device	cd

# "units" (SCSI logical unit number) that are not specified are
# treated as if specified as LUN 0.

# All SCSI devices allocate as many units as are required.

# The "unknown" device (uk? in pre-2.0.5) is now part of the base SCSI
# configuration and doesn't have to be explicitly configured.

device		scbus			#base SCSI code
#device		ch			#SCSI media changers
device		da			#SCSI direct access devices (aka disks)
#device		sa			#SCSI tapes
#device		cd			#SCSI CD-ROMs
#device		pass			#CAM passthrough driver
#device		pt			#SCSI processor type
#device		ses			#SCSI SES/SAF-TE driver

# CAM OPTIONS:
# debugging options:
# -- NOTE --  If you specify one of the bus/target/lun options, you must
#             specify them all!
# CAMDEBUG: When defined enables debugging macros
# CAM_DEBUG_BUS:  Debug the given bus.  Use -1 to debug all busses.
# CAM_DEBUG_TARGET:  Debug the given target.  Use -1 to debug all targets.
# CAM_DEBUG_LUN:  Debug the given lun.  Use -1 to debug all luns.
# CAM_DEBUG_FLAGS:  OR together CAM_DEBUG_INFO, CAM_DEBUG_TRACE,
#                   CAM_DEBUG_SUBTRACE, and CAM_DEBUG_CDB
#
# CAM_MAX_HIGHPOWER: Maximum number of concurrent high power (start unit) cmds
# SCSI_NO_SENSE_STRINGS: When defined disables sense descriptions
# SCSI_NO_OP_STRINGS: When defined disables opcode descriptions
# SCSI_DELAY: The number of MILLISECONDS to freeze the SIM (scsi adapter)
#             queue after a bus reset, and the number of milliseconds to
#             freeze the device queue after a bus device reset.
#options 	CAMDEBUG
#options 	CAM_DEBUG_BUS=-1
#options 	CAM_DEBUG_TARGET=-1
#options 	CAM_DEBUG_LUN=-1
#options 	CAM_DEBUG_FLAGS="CAM_DEBUG_INFO|CAM_DEBUG_TRACE|CAM_DEBUG_CDB"
#options 	CAM_MAX_HIGHPOWER=4
#options 	SCSI_NO_SENSE_STRINGS
#options 	SCSI_NO_OP_STRINGS
#options 	SCSI_DELAY=8000	# Be pessimistic about Joe SCSI device

# Options for the CAM CDROM driver:
# CHANGER_MIN_BUSY_SECONDS: Guaranteed minimum time quantum for a changer LUN
# CHANGER_MAX_BUSY_SECONDS: Maximum time quantum per changer LUN, only
#                           enforced if there is I/O waiting for another LUN
# The compiled in defaults for these variables are 2 and 10 seconds,
# respectively.
#
# These can also be changed on the fly with the following sysctl variables:
# kern.cam.cd.changer.min_busy_seconds
# kern.cam.cd.changer.max_busy_seconds
#
#options 	CHANGER_MIN_BUSY_SECONDS=2
#options 	CHANGER_MAX_BUSY_SECONDS=10

# Options for the CAM sequential access driver:
# SA_IO_TIMEOUT: Timeout for read/write/wfm  operations, in minutes
# SA_SPACE_TIMEOUT: Timeout for space operations, in minutes
# SA_REWIND_TIMEOUT: Timeout for rewind operations, in minutes
# SA_ERASE_TIMEOUT: Timeout for erase operations, in minutes
# SA_1FM_AT_EOD: Default to model which only has a default one filemark at EOT.
#options 	SA_IO_TIMEOUT="(4)"
#options 	SA_SPACE_TIMEOUT="(60)"
#options 	SA_REWIND_TIMEOUT="(2*60)"
#options 	SA_ERASE_TIMEOUT="(4*60)"
#options 	SA_1FM_AT_EOD

# Optional timeout for the CAM processor target (pt) device
# This is specified in seconds.  The default is 60 seconds.
#options 	SCSI_PT_DEFAULT_TIMEOUT="60"

# Optional enable of doing SES passthrough on other devices (e.g., disks)
#
# Normally disabled because a lot of newer SCSI disks report themselves
# as having SES capabilities, but this can then clot up attempts to build
# build a topology with the SES device that's on the box these drives
# are in....
#options		SES_ENABLE_PASSTHROUGH


#####################################################################
# MISCELLANEOUS DEVICES AND OPTIONS

# The `pty' device usually turns out to be ``effectively mandatory'',
# as it is required for `telnetd', `rlogind', `screen', `emacs', and
# `xterm', among others.

pseudo-device	pty		#Pseudo ttys
pseudo-device	speaker		#Play IBM BASIC-style noises out your speaker
#pseudo-device	gzip		#Exec gzipped a.out's
#pseudo-device	vn		#Vnode driver (turns a file into a device)
#pseudo-device	md		#Memory/malloc disk
#pseudo-device	snp		#Snoop device - to look at pty/vty/etc..
#pseudo-device	ccd	4	#Concatenated disk driver

# Configuring Vinum into the kernel is not necessary, since the kld
# module gets started automatically when vinum(8) starts.  This
# device is also untested.  Use at your own risk.
#
# The option VINUMDEBUG must match the value set in CFLAGS
# in src/sbin/vinum/Makefile.  Failure to do so will result in
# the following message from vinum(8):
#
# Can't get vinum config: Invalid argument
#
# see vinum(4) for more reasons not to use these options.
#pseudo-device	vinum		#Vinum concat/mirror/raid driver
#options 	VINUMDEBUG	#enable Vinum debugging hooks

# Kernel side iconv library
#options 	LIBICONV

# Size of the kernel message buffer.  Should be N * pagesize.
#options 	MSGBUF_SIZE=40960


#####################################################################
# HARDWARE DEVICE CONFIGURATION

# ISA and EISA devices:
# EISA support is available for some device, so they can be auto-probed.
# MicroChannel (MCA) support is available for some devices.

#
# Mandatory ISA devices: isa, npx
#
device		isa

#
# Options for `isa':
#
# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
# interrupt controller.  This saves about 0.7-1.25 usec for each interrupt.
# This option breaks suspend/resume on some portables.
#
# AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A
# interrupt controller.  This saves about 0.7-1.25 usec for each interrupt.
# Automatic EOI is documented not to work for for the slave with the
# original i8259A, but it works for some clones and some integrated
# versions.
#
# MAXMEM specifies the amount of RAM on the machine; if this is not
# specified, FreeBSD will first read the amount of memory from the CMOS
# RAM, so the amount of memory will initially be limited to 64MB or 16MB
# depending on the BIOS.  If the BIOS reports 64MB, a memory probe will
# then attempt to detect the installed amount of RAM.  If this probe
# fails to detect >64MB RAM you will have to use the MAXMEM option.
# The amount is in kilobytes, so for a machine with 128MB of RAM, it would
# be 131072 (128 * 1024).
#
# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
# reset the CPU for reboot.  This is needed on some systems with broken
# keyboard controllers.
#
# PAS_JOYSTICK_ENABLE enables the gameport on the ProAudio Spectrum

#options 	AUTO_EOI_1
#options 	AUTO_EOI_2
#options 	MAXMEM="(128*1024)"
#options 	BROKEN_KEYBOARD_RESET
#options 	PAS_JOYSTICK_ENABLE

# Enable support for the kernel PLL to use an external PPS signal,
# under supervision of [x]ntpd(8)
# More info in ntpd documentation: http://www.eecis.udel.edu/~ntp

#options 	PPS_SYNC

# If you see the "calcru: negative time of %ld usec for pid %d (%s)\n"
# message you probably have some broken sw/hw which disables interrupts
# for too long.  You can make the system more resistant to this by
# choosing a high value for NTIMECOUNTER.  The default is 5, there
# is no upper limit but more than a couple of hundred are not productive.
# A better strategy may be to sysctl -w kern.timecounter.method=1

#options 	NTIMECOUNTER=20

# The keyboard controller; it controls the keyboard and the PS/2 mouse.
device		atkbdc0	at isa? port IO_KBD

# The AT keyboard
device		atkbd0	at atkbdc? irq 1

# Options for atkbd:
#options 	ATKBD_DFLT_KEYMAP	# specify the built-in keymap
#makeoptions	ATKBD_DFLT_KEYMAP="jp.106"

# These options are valid for other keyboard drivers as well.
#options 	KBD_DISABLE_KEYMAP_LOAD	# refuse to load a keymap
#options 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev

# `flags' for atkbd:
#       0x01    Force detection of keyboard, else we always assume a keyboard
#       0x02    Don't reset keyboard, useful for some newer ThinkPads
#	0x03	Force detection and avoid reset, might help with certain
#		dockingstations
#       0x04    Old-style (XT) keyboard support, useful for older ThinkPads

# PS/2 mouse
device		psm0	at atkbdc? irq 12

# Options for psm:
#options 	PSM_HOOKRESUME		#hook the system resume event, useful
					#for some laptops
#options 	PSM_RESETAFTERSUSPEND	#reset the device at the resume event

# The video card driver.
device		vga0	at isa?

# Options for vga:
# Try the following option if the mouse pointer is not drawn correctly
# or font does not seem to be loaded properly.  May cause flicker on
# some systems.
#options 	VGA_ALT_SEQACCESS

# If you can dispense with some vga driver features, you may want to
# use the following options to save some memory.
#options 	VGA_NO_FONT_LOADING	# don't save/load font
#options 	VGA_NO_MODE_CHANGE	# don't change video modes

# Older video cards may require this option for proper operation.
#options 	VGA_SLOW_IOACCESS	# do byte-wide i/o's to TS and GDC regs

# The following option probably won't work with the LCD displays.
options 	VGA_WIDTH90		# support 90 column modes

# To include support for VESA video modes
#options 	VESA

# Splash screen at start up!  Screen savers require this too.
#pseudo-device	splash

# The pcvt console driver (vt220 compatible).
#device		vt0	at isa?
#options 	XSERVER			# support for running an X server on vt
#options 	FAT_CURSOR		# start with block cursor
# This PCVT option is for keyboards such as those used on IBM ThinkPad laptops
#options 	PCVT_SCANSET=2 		# IBM keyboards are non-std
# Other PCVT options are documented in pcvt(4).
#options 	PCVT_24LINESDEF
#options 	PCVT_CTRL_ALT_DEL
#options 	PCVT_EMU_MOUSE
#options 	PCVT_FREEBSD=211
#options 	PCVT_META_ESC
#options 	PCVT_NSCREENS=9
#options 	PCVT_PRETTYSCRNS
#options 	PCVT_SCREENSAVER
#options 	PCVT_USEKBDSEC
#options 	PCVT_VT220KEYB

# The syscons console driver (sco color console compatible).
device		sc0	at isa?
options 	MAXCONS=16		# number of virtual consoles
options 	SC_ALT_MOUSE_IMAGE	# simplified mouse cursor in text mode
#options 	SC_DFLT_FONT		# compile font in
#makeoptions	SC_DFLT_FONT=cp850
#options 	SC_DISABLE_DDBKEY	# disable `debug' key
#options 	SC_DISABLE_REBOOT	# disable reboot key sequence
options 	SC_HISTORY_SIZE=500	# number of history buffer lines
options 	SC_MOUSE_CHAR=0x3	# char code for text mode mouse cursor
options 	SC_PIXEL_MODE		# add support for the raster text mode

# The following options will let you change the default colors of syscons.
#options 	SC_NORM_ATTR="(FG_GREEN|BG_BLACK)"
#options 	SC_NORM_REV_ATTR="(FG_YELLOW|BG_GREEN)"
#options 	SC_KERNEL_CONS_ATTR="(FG_RED|BG_BLACK)"
#options 	SC_KERNEL_CONS_REV_ATTR="(FG_BLACK|BG_RED)"

# If you have a two button mouse, you may want to add the following option
# to use the right button of the mouse to paste text.
#options 	SC_TWOBUTTON_MOUSE

# You can selectively disable features in syscons.
#options 	SC_NO_CUTPASTE
#options 	SC_NO_FONT_LOADING
#options 	SC_NO_HISTORY
#options 	SC_NO_SYSMOUSE

#
# The Numeric Processing eXtension driver.  In addition to this, you
# may configure a math emulator (see above).  If your machine has a
# hardware FPU and the kernel configuration includes the npx device
# *and* a math emulator compiled into the kernel, the hardware FPU
# will be used, unless it is found to be broken or unless "flags" to
# npx0 includes "0x08", which requests preference for the emulator.
device		npx0	at nexus? port IO_NPX flags 0x0 irq 13

#
# `flags' for npx0:
#	0x01	don't use the npx registers to optimize bcopy.
#	0x02	don't use the npx registers to optimize bzero.
#	0x04	don't use the npx registers to optimize copyin or copyout.
#	0x08	use emulator even if hardware FPU is available.
# The npx registers are normally used to optimize copying and zeroing when
# all of the following conditions are satisfied:
#	I586_CPU is an option
#	the cpu is an i586 (perhaps not a Pentium)
#	the probe for npx0 succeeds
#	INT 16 exception handling works.
# Then copying and zeroing using the npx registers is normally 30-100% faster.
# The flags can be used to control cases where it doesn't work or is slower.
# Setting them at boot time using userconfig works right (the optimizations
# are not used until later in the bootstrap when npx0 is attached).
# Flag 0x08 automatically disables the i586 optimized routines.
#

#
# Optional ISA and EISA devices:
#

#
# SCSI host adapters: `aha', `aic', `bt'
#
# adv: All Narrow SCSI bus AdvanSys controllers.
# adw: Second Generation AdvanSys controllers including the ADV940UW.
# aha: Adaptec 154x
# ahc: Adaptec 274x/284x/294x
# aic: Adaptec 152x
# bt: Most Buslogic controllers
# ncv: NCR 53C500 based SCSI host adapters.
# nsp: Workbit Ninja SCSI-3 based PC Card SCSI host adapters.
# stg: TMC 18C30, 18C50 based ISA/PC Card SCSI host adapters.
#
# Note that the order is important in order for Buslogic cards to be
# probed correctly.
#

#device		bt0	at isa? port IO_BT0
#device		adv0	at isa?
#device		adw
#device		aha0	at isa?
#device		aic0	at isa?
#device		ncv
#device		nsp
#device		stg0	at isa? port 0x140 irq 11

#
# Adaptec FSA RAID controllers, including integrated DELL controller,
# the Dell PERC 2/QC and the HP NetRAID-4M
#
# AAC_COMPAT_LINUX	Include code to support Linux-binary management
#			utilities (requires Linux compatibility
#			support).
#
#device		aac

#
# Compaq Smart RAID, Mylex DAC960 and AMI MegaRAID controllers.  Only
# one entry is needed; the code will find and configure all supported
# controllers.
#
#device		ida		# Compaq Smart RAID
#device		mlx		# Mylex DAC960
#device		amr		# AMI MegaRAID

#
# 3ware ATA RAID
#
#device		twe		# 3ware ATA RAID

#
# The 'ATA' driver supports all ATA and ATAPI devices.
# It can reuse the majors of wd.c for booting purposes.
# You only need one "device ata" for it to find all
# PCI ATA/ATAPI devices on modern machines.
device		ata
device		atadisk		# ATA disk drives
device		atapicd		# ATAPI CDROM drives
#device		atapifd		# ATAPI floppy drives
#device		atapist		# ATAPI tape drives

#The following options are valid on the ATA driver:
#
# ATA_STATIC_ID:	controller numbering is static (like the old driver)
#			else the device numbers are dynamically allocated.
#options 	ATA_STATIC_ID

#
# For older non-PCI systems, these are the lines to use:
#device		ata0	at isa? port IO_WD1 irq 14
#device		ata1	at isa? port IO_WD2 irq 15

#
# ST-506, ESDI, and IDE hard disks: `wdc' and `wd'
#
# The flags fields are used to enable the multi-sector I/O and
# the 32BIT I/O modes.  The flags may be used in either the controller
# definition or in the individual disk definitions.  The controller
# definition is supported for the boot configuration stuff.
#
# Each drive has a 16 bit flags value defined:
#	The low 8 bits are the maximum value for the multi-sector I/O,
#	where 0xff defaults to the maximum that the drive can handle.
#	The high bit of the 16 bit flags (0x8000) allows probing for
#	32 bit transfers.  Bit 14 (0x4000) enables a hack to wake
#	up powered-down laptop drives.  Bit 13 (0x2000) allows
#	probing for PCI IDE DMA controllers, such as Intel's PIIX
#	south bridges. Bit 12 (0x1000) sets LBA mode instead of the
#	default CHS mode for accessing the drive. See the wd.4 man page.
#
# The flags field for the drives can be specified in the controller
# specification with the low 16 bits for drive 0, and the high 16 bits
# for drive 1.
# e.g.:
#device		wdc0	at isa? port IO_WD1 irq 14 flags 0x00ff8004
#
# specifies that drive 0 will be allowed to probe for 32 bit transfers and
# a maximum multi-sector transfer of 4 sectors, and drive 1 will not be
# allowed to probe for 32 bit transfers, but will allow multi-sector
# transfers up to the maximum that the drive supports.
#
# If you are using a PCI controller that is not running in compatibility
# mode (for example, it is a 2nd IDE PCI interface), then use config line(s)
# such as:
#
#device		wdc2	at isa? port 0 flags 0xa0ffa0ff
#device		wd4	at wdc2 drive 0
#device		wd5	at wdc2 drive 1
#
#device		wdc3	at isa? port 0 flags 0xa0ffa0ff
#device		wd6	at wdc3 drive 0
#device		wd7	at wdc3 drive 1
#
# Note that the above config would be useful for a Promise card, when used
# on a MB that already has a PIIX controller.  Note the bogus irq and port
# entries.  These are automatically filled in by the IDE/PCI support.
#
# This driver must be commented out because it is mutually exclusive with
# the ata(4) driver.
#
#device		wdc0	at isa? port IO_WD1 irq 14
#device		wd0	at wdc0 drive 0
#device		wd1	at wdc0 drive 1
#device		wdc1	at isa? port IO_WD2 irq 15
#device		wd2	at wdc1 drive 0
#device		wd3	at wdc1 drive 1

#
# This option allow you to override the default probe time for IDE
# devices, to get a faster probe.  Setting this below 10000 violate
# the IDE specs, but may still work for you (it will work for most
# people).
#
#options 	IDE_DELAY=8000	# Be optimistic about Joe IDE device

# IDE CD-ROM & CD-R/RW  driver - requires wdc controller
#device		wcd

# IDE floppy driver - requires wdc controller
#device		wfd

# IDE tape driver - requires wdc controller
#device		wst


#
# Standard floppy disk controllers: `fdc' and `fd'
#
device		fdc0	at isa? port IO_FD1 irq 6 drq 2
#
# FDC_DEBUG enables floppy debugging.  Since the debug output is huge, you
# gotta turn it actually on by setting the variable fd_debug with DDB,
# however.
#options 	FDC_DEBUG

device		fd0	at fdc0 drive 0
#device		fd1	at fdc0 drive 1

# M-systems DiskOnchip products see src/sys/contrib/dev/fla/README
#device		fla0	at isa?

#
# Other standard PC hardware: `mse', `sio', etc.
#
# mse: Logitech and ATI InPort bus mouse ports
# sio: serial ports (see sio(4))

#device		mse0	at isa? port 0x23c irq 5

device		sio0	at isa? port IO_COM1 flags 0x10 irq 4

#
# `flags' for serial drivers that support consoles (only for sio now):
#	0x10	enable console support for this unit.  The other console flags
#		are ignored unless this is set.  Enabling console support does
#		not make the unit the preferred console - boot with -h or set
#		the 0x20 flag for that.  Currently, at most one unit can have
#		console support; the first one (in config file order) with
#		this flag set is preferred.  Setting this flag for sio0 gives
#		the old behaviour.
#	0x20	force this unit to be the console (unless there is another
#		higher priority console).  This replaces the COMCONSOLE option.
#	0x40	reserve this unit for low level console operations.  Do not
#		access the device in any normal way.
#	0x80	use this port for serial line gdb support in ddb.
#
# PnP `flags' (set via userconfig using pnp x flags y)
#	0x1	disable probing of this device.  Used to prevent your modem
#		from being attached as a PnP modem.
#

# Options for serial drivers that support consoles (only for sio now):
#options 	BREAK_TO_DEBUGGER	#a BREAK on a comconsole goes to
					#DDB, if available.
#options 	CONSPEED=115200		# speed for serial console
					# (default 9600)

# Solaris implements a new BREAK which is initiated by a character
# sequence CR ~ ^b which is similar to a familiar pattern used on
# Sun servers by the Remote Console.
#options 	ALT_BREAK_TO_DEBUGGER

# Options for sio:
#options 	COM_ESP			#code for Hayes ESP
#options 	COM_MULTIPORT		#code for some cards with shared IRQs

# Other flags for sio that aren't documented in the man page.
#	0x20000	enable hardware RTS/CTS and larger FIFOs.  Only works for
#		ST16650A-compatible UARTs.

# PCI Universal Communications driver
# Supports various single and multi port PCI serial cards. Maybe later
# also the parallel ports on combination serial/parallel cards. New cards
# can be added in src/sys/dev/puc/pucdata.c.
#
# If the PUC_FASTINTR option is used the driver will try to use fast
# interrupts. The card must then be the only user of that interrupt.
# Interrupts cannot be shared when using PUC_FASTINTR.
#device		puc
#options 	PUC_FASTINTR

#
# Network interfaces: `cx', `ed', `el', `ep', `ie', `is', `le', `lnc'
#
# ar: Arnet SYNC/570i hdlc sync 2/4 port V.35/X.21 serial driver (requires sppp)
# cm: Arcnet SMC COM90c26 / SMC COM90c56
#     (and SMC COM90c66 in '56 compatibility mode) adapters.
# cs: IBM Etherjet and other Crystal Semi CS89x0-based adapters
# cx: Cronyx/Sigma multiport sync/async (with Cisco or PPP framing)
# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
# el: 3Com 3C501 (slow!)
# ep: 3Com 3C509
# ex: Intel EtherExpress Pro/10 and other i82595-based adapters
# fe: Fujitsu MB86960A/MB86965A Ethernet
# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210; Intel EtherExpress
# le: Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100,
#     DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422)
# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 & Am79C960)
# rdp: RealTek RTL 8002-based pocket ethernet adapters
# sbni: Granch SBNI12-xx adapters
# sr: RISCom/N2 hdlc sync 1/2 port V.35/X.21 serial driver (requires sppp)
# wl: Lucent Wavelan (ISA card only).
# awi: IEEE 802.11b PRISM I cards.
# wi: Lucent WaveLAN/IEEE 802.11 PCMCIA adapters. Note: this supports both
#     the PCMCIA and ISA cards: the ISA card is really a PCMCIA to ISA
#     bridge with a PCMCIA adapter plugged into it.
# an: Aironet 4500/4800 802.11 wireless adapters. Supports the PCMCIA,
#     PCI and ISA varieties.
# xe: Xircom/Intel EtherExpress Pro100/16 PC Card ethernet controller.
# ray: Raytheon Raylink 802.11 wireless NICs, OEM as Webgear Aviator 2.4GHz
# oltr: Olicom ISA token-ring adapters OC-3115, OC-3117, OC-3118 and OC-3133
#       (no options needed)
#
#device ar0 at isa? port 0x300 irq 10 iomem 0xd0000
#device cm0 at isa? port 0x2e0 irq 9 iomem 0xdc000
#device cs0 at isa? port 0x300
#device cx0 at isa? port 0x240 irq 15 drq 7
device ed0
# at isa? port 0x280 irq 5 iomem 0xd8000
#device el0 at isa? port 0x300 irq 9
#device ep
#device ex
#device fe0 at isa? port 0x300
#device ie0 at isa? port 0x300 irq 5 iomem 0xd0000
#device ie1 at isa? port 0x360 irq 7 iomem 0xd0000
#device le0 at isa? port 0x300 irq 5 iomem 0xd0000
#device lnc0 at isa? port 0x280 irq 10 drq 0
#device rdp0 at isa? port 0x378 irq 7 flags 2
#device sbni0 at isa? port 0x210 irq 5 flags 0xefdead
#device sr0 at isa? port 0x300 irq 5 iomem 0xd0000
#device sn0 at isa? port 0x300 irq 10
#device awi
#device wi
#device an
#options 	WLCACHE		# enables the signal-strength cache
#options 	WLDEBUG		# enables verbose debugging output
#device wl0 at isa? port 0x300
#device xe
#device ray

#device oltr0 at isa?

#
# ATM related options
#
# The `en' device provides support for Efficient Networks (ENI)
# ENI-155 PCI midway cards, and the Adaptec 155Mbps PCI ATM cards (ANA-59x0).
#
# atm pseudo-device provides generic atm functions and is required for
# atm devices.
# NATM enables the netnatm protocol family that can be used to
# bypass TCP/IP.
#
# the current driver supports only PVC operations (no atm-arp, no multicast).
# for more details, please read the original documents at
# http://www.ccrc.wustl.edu/pub/chuck/tech/bsdatm/bsdatm.html
#
#pseudo-device	atm
#device		en
#options 	NATM			#native ATM

#
# Audio drivers: `snd', `sb', `pas', `gus', `pca'
#
# snd: Voxware sound support code
# sb: SoundBlaster PCM - SoundBlaster, SB Pro, SB16, ProAudioSpectrum
# sbxvi: SoundBlaster 16
# sbmidi: SoundBlaster 16 MIDI interface
# pas: ProAudioSpectrum PCM and MIDI
# gus: Gravis Ultrasound - Ultrasound, Ultrasound 16, Ultrasound MAX
# gusxvi: Gravis Ultrasound 16-bit PCM	(do not use)
# mss: Microsoft Sound System
# css: Crystal Sound System (CSS 423x PnP)
# sscape: Ensoniq Soundscape MIDI interface
# sscape_mss: Ensoniq Soundscape PCM (requires sscape)
# opl: Yamaha OPL-2 and OPL-3 FM - SB, SB Pro, SB 16, ProAudioSpectrum
# uart: stand-alone 6850 UART for MIDI
# mpu: Roland MPU-401 stand-alone card
#
# Note: It has been reported that ISA DMA with the SoundBlaster will
# lock up the machine (PR docs/5358).  If this happens to you,
# turning off USWC write posting in your machine's BIOS may fix
# the problem.
#
# Beware!  The addresses specified below are also hard-coded in
# src/sys/i386/isa/sound/sound_config.h.  If you change the values here, you
# must also change the values in the include file.
#
# pcm: PCM audio through various sound cards.
#
# This has support for a large number of new audio cards, based on
# CS423x, OPTi931, Yamaha OPL-SAx, and also for SB16, GusPnP.
# For more information about this driver and supported cards,
# see the pcm.4 man page.
#
# The flags of the device tells the device a bit more info about the
# device that normally is obtained through the PnP interface.
#	bit  2..0   secondary DMA channel;
#	bit  4      set if the board uses two dma channels;
#	bit 15..8   board type, overrides autodetection; leave it
#		    zero if don't know what to put in (and you don't,
#		    since this is unsupported at the moment...).
#
# This driver will use the new PnP code if it's available.
#
# pca: PCM audio through your PC speaker
#
# If you have a GUS-MAX card and want to use the CS4231 codec on the
# card the drqs for the gus max must be 8 bit (1, 2, or 3).
#
# If you would like to use the full duplex option on the gus, then define
# flags to be the ``read dma channel''.
#
# options BROKEN_BUS_CLOCK	#PAS-16 isn't working and OPTI chipset
# options SYMPHONY_PAS		#PAS-16 isn't working and SYMPHONY chipset
# options EXCLUDE_SBPRO		#PAS-16
# options SBC_IRQ=5		#PAS-16. Must match irq on sb0 line.
# PAS16: The order of the pas0/sb0/opl0 is important since the
#	sb emulation is enabled in the pas-16 attach.
#
# To override the GUS defaults use:
# options GUS_DMA2
# options GUS_DMA
# options GUS_IRQ
#
# The src/sys/i386/isa/sound/sound.doc has more information.

# Controls all "VOXWARE" driver sound devices.  See Luigi's driver
# below for an alternate which may work better for some cards.
#
#device		snd
#device pas0	at isa? port 0x388 irq 10 drq 6
#device sb0	at isa? port 0x220 irq 5 drq 1
#device sbxvi0	at isa? drq 5
#device sbmidi0	at isa? port 0x330
#device awe0	at isa? port 0x620
#device gus0	at isa? port 0x220 irq 12 drq 1
##device gus0	at isa? port 0x220 irq 12 drq 1 flags 0x3
#device mss0	at isa? port 0x530 irq 10 drq 1
#device css0	at isa? port 0x534 irq 5 drq 1 flags 0x08
#device sscape0	at isa? port 0x330 irq 9 drq 0
#device trix0	at isa? port 0x330 irq 6 drq 0
#device sscape_mss0 at isa? port 0x534 irq 5 drq 1
#device opl0	at isa? port 0x388
#device mpu0	at isa? port 0x330 irq 6 drq 0
#device uart0	at isa? port 0x330 irq 5

# The newpcm driver (use INSTEAD of snd0 and all VOXWARE drivers!).
# Note that motherboard sound devices may require options PNPBIOS.
#
# Supported cards include:
# Creative SoundBlaster ISA PnP/non-PnP
# Supports ESS and Avance ISA chips as well.
# Gravis UltraSound ISA PnP/non-PnP
# Crystal Semiconductor CS461x/428x PCI
# Neomagic 256AV (ac97)
# Most of the more common ISA/PnP sb/mss/ess compatable cards.

# For non-pnp sound cards with no bridge drivers only:
#device		pcm0 at isa? irq 10 drq 1 flags 0x0
#
# For PnP/PCI sound cards
#device		pcm

# The bridge drivers for sound cards.  These can be seperately configured
# for providing services to the likes of new-midi (not in the tree yet).
# When used with 'device pcm' they also provide pcm sound services.
#
# sbc:  Creative SoundBlaster ISA PnP/non-PnP
#	Supports ESS and Avance ISA chips as well.
# gusc: Gravis UltraSound ISA PnP/non-PnP
# csa:  Crystal Semiconductor CS461x/428x PCI

# For non-PnP cards:
#device		sbc0	at isa? port 0x220 irq 5 drq 1 flags 0x15
#device		gusc0	at isa? port 0x220 irq 5 drq 1 flags 0x13

# Not controlled by `snd'
#device		pca0 at isa? port IO_TIMER1

#
# Miscellaneous hardware:
#
# mcd: Mitsumi CD-ROM using proprietary (non-ATAPI) interface
# scd: Sony CD-ROM using proprietary (non-ATAPI) interface
# matcd: Matsushita/Panasonic CD-ROM using proprietary (non-ATAPI) interface
# wt: Wangtek and Archive QIC-02/QIC-36 tape drives
# ctx: Cortex-I frame grabber
# apm: Laptop Advanced Power Management (experimental)
# spigot: The Creative Labs Video Spigot video-acquisition board
# meteor: Matrox Meteor video capture board
# bktr: Brooktree bt848/848a/849a/878/879 video capture and TV Tuner board
# cy: Cyclades serial driver
# dgb: Digiboard PC/Xi and PC/Xe series driver (ALPHA QUALITY!)
# dgm: Digiboard PC/Xem driver
# gp:  National Instruments AT-GPIB and AT-GPIB/TNT board
# asc: GI1904-based hand scanners, e.g. the Trust Amiscan Grey
# gsc: Genius GS-4500 hand scanner.
# joy: joystick
# labpc: National Instrument's Lab-PC and Lab-PC+
# rc: RISCom/8 multiport card
# rp: Comtrol Rocketport(ISA) - single card
# tw: TW-523 power line interface for use with X-10 home control products
# si: Specialix SI/XIO 4-32 port terminal multiplexor
# stl: Stallion EasyIO and EasyConnection 8/32 (ISA and PCI), EasyConnection 8/64 PCI
# stli: Stallion EasyConnection 8/64 ISA/EISA, ONboard, Brumby (intelligent)
# nmdm: nullmodem terminal driver (see nmdm(4))

# Notes on APM
#  The flags takes the following meaning for apm0:
#    0x0020  Statclock is broken.
#  If apm is omitted, some systems require sysctl -w kern.timecounter.method=1
#  for correct timekeeping.

# Notes on the spigot:
#  The video spigot is at 0xad6.  This port address can not be changed.
#  The irq values may only be 10, 11, or 15
#  I/O memory is an 8kb region.  Possible values are:
#    0a0000, 0a2000, ..., 0fffff, f00000, f02000, ..., ffffff
#    The start address must be on an even boundary.
#  Add the following option if you want to allow non-root users to be able
#  to access the spigot.  This option is not secure because it allows users
#  direct access to the I/O page.
#  	options SPIGOT_UNSECURE

# Notes on the Comtrol Rocketport driver:
#
# The exact values used for rp0 depend on how many boards you have
# in the system.  The manufacturer's sample configs are listed as:
#
#   Comtrol Rocketport ISA single card
#               device  rp0     at isa? port 0x280
#
#   If instead you have two ISA cards, one installed at 0x100 and the
#   second installed at 0x180, then you should add the following to
#   your kernel configuration file:
#
#               device  rp0     at isa? port 0x100
#               device  rp1     at isa? port 0x180
#
#   For 4 ISA cards, it might be something like this:
#
#               device  rp0     at isa? port 0x180
#               device  rp1     at isa? port 0x100
#               device  rp2     at isa? port 0x340
#               device  rp3     at isa? port 0x240
#
#   And for PCI cards, you only need say:
#
#               device rp

# Notes on the Digiboard driver:
#
# The following flag values have special meanings:
#	0x01 - alternate layout of pins (dgb & dgm)
#	0x02 - use the windowed PC/Xe in 64K mode (dgb only)

# Notes on the Specialix SI/XIO driver:
#  **This is NOT a Specialix supported Driver!**
#  The host card is memory, not IO mapped.
#  The Rev 1 host cards use a 64K chunk, on a 32K boundary.
#  The Rev 2 host cards use a 32K chunk, on a 32K boundary.
#  The cards can use an IRQ of 11, 12 or 15.

# Notes on the Stallion stl and stli drivers:
#  See src/i386/isa/README.stl for complete instructions.
#  This is version 2.0.0, unsupported by Stallion.
#  The stl driver has a secondary IO port hard coded at 0x280.  You need
#     to change src/i386/isa/stallion.c if you reconfigure this on the boards.
#  The "flags" and "iosiz" settings on the stli driver depend on the board:
#	EasyConnection 8/64 ISA:     flags 23         iosiz 0x1000
#	EasyConnection 8/64 EISA:    flags 24         iosiz 0x10000
#	EasyConnection 8/64 MCA:     flags 25         iosiz 0x1000
#	ONboard ISA:                 flags 4          iosiz 0x10000
#	ONboard EISA:                flags 7          iosiz 0x10000
#	ONboard MCA:                 flags 3          iosiz 0x10000
#	Brumby:                      flags 2          iosiz 0x4000
#	Stallion:                    flags 1          iosiz 0x10000
#  For the PCI cards, "device stl" will suffice.

#device		mcd0	at isa? port 0x300 irq 10
# for the Sony CDU31/33A CDROM
#device		scd0	at isa? port 0x230
# for the SoundBlaster 16 multicd - up to 4 devices
#device		matcd0  at isa? port 0x230
#device		wt0	at isa? port 0x300 irq 5 drq 1
#device		ctx0	at isa? port 0x230 iomem 0xd0000
#device		spigot0 at isa? port 0xad6 irq 15 iomem 0xee000
#device		apm0
#device		gp0	at isa? port 0x2c0
#device		gsc0	at isa? port IO_GSC1 drq 3
#device		joy0	at isa? port IO_GAME
#device		cy0	at isa? irq 10 iomem 0xd4000 iosiz 0x2000
#options 	CY_PCI_FASTINTR		# Use with cy_pci unless irq is shared
#device		dgb0	at isa? port 0x220 iomem 0xfc000
#options 	NDGBPORTS=16		# Defaults to 16*NDGB
#device		dgm0	at isa? port 0x104 iomem 0xd0000
#device		labpc0	at isa? port 0x260 irq 5
#device		rc0	at isa? port 0x220 irq 12
#device		rp0	at isa? port 0x280
# the port and irq for tw0 are fictitious
#device		tw0	at isa? port 0x380 irq 11
#device		si0	at isa? iomem 0xd0000 irq 12
#device		asc0	at isa? port IO_ASC1 drq 3 irq 10
#device		stl0	at isa? port 0x2a0 irq 10
#device		stli0	at isa? port 0x2a0 iomem 0xcc000 flags 23 iosiz 0x1000
# You are unlikely to have the hardware for loran0 <phk@FreeBSD.org>
#device		loran0	at isa? irq 5
# HOT1 Xilinx 6200 card (http://www.vcc.com/)
#device		xrpu
# nullmodem terminal driver
#device		nmdm

#
# MCA devices:
#
# The MCA bus device is `mca'.  It provides auto-detection and
# configuration support for all devices on the MCA bus.
#
# The 'aha' device provides support for the Adaptec 1640
#
# The 'bt' device provides support for various Buslogic/Bustek
# and Storage Dimensions SCSI adapters.
#
# The 'ep' device provides support for the 3Com 3C529 ethernet card.
#
device		mca

#
# EISA devices:
#
# The EISA bus device is `eisa'.  It provides auto-detection and
# configuration support for all devices on the EISA bus.
#
# The `ahb' device provides support for the Adaptec 174X adapter.
#
# The `ahc' device provides support for the Adaptec 274X and 284X
# adapters.  The 284X, although a VLB card, responds to EISA probes.
#
# fea: DEC DEFEA EISA FDDI adapter
#
#device		eisa
#device		ahb
#device		ahc
#device		fea

# The aic7xxx driver will attempt to use memory mapped I/O for all PCI
# controllers that have it configured only if this option is set. Unfortunately,
# this doesn't work on some motherboards, which prevents it from being the
# default.
#options 	AHC_ALLOW_MEMIO

# The adw driver will attempt to use memory mapped I/O for all PCI
# controllers that have it configured only if this option is set.
#options 	ADW_ALLOW_MEMIO

# By default, only 10 EISA slots are probed, since the slot numbers
# above clash with the configuration address space of the PCI subsystem,
# and the EISA probe is not very smart about this.  This is sufficient
# for most machines, but in particular the HP NetServer LC series comes
# with an onboard AIC7770 dual-channel SCSI controller on EISA slot #11,
# thus you need to bump this figure to 12 for them.
#options 	EISA_SLOTS=12

#
# PCI devices & PCI options:
#
# The main PCI bus device is `pci'.  It provides auto-detection and
# configuration support for all devices on the PCI bus, using either
# configuration mode defined in the PCI specification.

device		pci

# PCI options
#
options 	PCI_QUIET	#quiets PCI code on chipset settings


# The `ahc' device provides support for the Adaptec 29/3940(U)(W)
# and motherboard based AIC7870/AIC7880 adapters.
#
# The `amd' device provides support for the AMD 53C974 SCSI host
# adapter chip as found on devices such as the Tekram DC-390(T).
#
# The `bge' device provides support for gigabit ethernet adapters
# based on the Broadcom BCM570x familiy of controllers, including the
# 3Com 3c996-T, the Netgear GA302T, the SysKonnect SK-9D21 and SK-9D41,
# and the embedded gigE NICs on Dell PowerEdge 2550 servers.
#
# The `ncr' device provides support for the NCR 53C810 and 53C825
# self-contained SCSI host adapters.
#
# The `isp' device provides support for the Qlogic ISP 1020, 1040
# nd 1040B PCI SCSI host adapters, ISP 1240 Dual Ultra SCSI,
# ISP 1080 and 1280 (Dual) Ultra2, ISP 12160 Ultra3 SCSI, as well as
# the Qlogic ISP 2100 and ISP 2200 Fibre Channel Host Adapters.
#
# The `dc' device provides support for PCI fast ethernet adapters
# based on the DEC/Intel 21143 and various workalikes including:
# the ADMtek AL981 Comet and AN985 Centaur, the ASIX Electronics
# AX88140A and AX88141, the Davicom DM9100 and DM9102, the Lite-On
# 82c168 and 82c169 PNIC, the Lite-On/Macronix LC82C115 PNIC II
# and the Macronix 98713/98713A/98715/98715A/98725 PMAC. This driver
# replaces the old al, ax, dm, pn and mx drivers.  List of brands:
# Digital DE500-BA, Kingston KNE100TX, D-Link DFE-570TX, SOHOware SFA110, 
# SVEC PN102-TX, CNet Pro110B, 120A, and 120B, Compex RL100-TX, 
# LinkSys LNE100TX, LNE100TX V2.0, Jaton XpressNet, Alfa Inc GFC2204,
# KNE110TX.
#
# The `de' device provides support for the Digital Equipment DC21040
# self-contained Ethernet adapter.
#
# The `fxp' device provides support for the Intel EtherExpress Pro/100B
# PCI Fast Ethernet adapters.
#
# The `gx' device provides support for the Intel Pro/1000 Gigabit Ethernet
# PCI adapters (82542, 82543-F, 82543-T).
#
# The 'lge' device provides support for PCI gigabit ethernet adapters
# based on the Level 1 LXT1001 NetCellerator chipset. This includes the
# D-Link DGE-500SX, SMC TigerCard 1000 (SMC9462SX), and some Addtron cards.
#
# The 'nge' device provides support for PCI gigabit ethernet adapters
# based on the National Semiconductor DP83820 and DP83821 chipset. This
# includes the SMC EZ Card 1000 (SMC9462TX), D-Link DGE-500T, Asante
# FriendlyNet GigaNIX 1000TA and 1000TPC, the Addtron AEG320T, the
# LinkSys EG1032 and EG1064, the Surecom EP-320G-TX and the Netgear GA622T.
#
# The 'pcn' device provides support for PCI fast ethernet adapters based
# on the AMD Am79c97x chipsets, including the PCnet/FAST, PCnet/FAST+,
# PCnet/PRO and PCnet/Home. These were previously handled by the lnc
# driver (and still will be if you leave this driver out of the kernel).
#
# The 'rl' device provides support for PCI fast ethernet adapters based
# on the RealTek 8129/8139 chipset. Note that the RealTek driver defaults
# to using programmed I/O to do register accesses because memory mapped
# mode seems to cause severe lockups on SMP hardware. This driver also
# supports the Accton EN1207D `Cheetah' adapter, which uses a chip called
# the MPX 5030/5038, which is either a RealTek in disguise or a RealTek
# workalike.  Note that the D-Link DFE-530TX+ uses the RealTek chipset
# and is supported by this driver, not the 'vr' driver.
#
# The 'sf' device provides support for Adaptec Duralink PCI fast
# ethernet adapters based on the Adaptec AIC-6915 "starfire" controller.
# This includes dual and quad port cards, as well as one 100baseFX card.
# Most of these are 64-bit PCI devices, except for one single port
# card which is 32-bit.
#
# The 'ste' device provides support for adapters based on the Sundance
# Technologies ST201 PCI fast ethernet controller. This includes the
# D-Link DFE-550TX.
#
# The 'sis' device provides support for adapters based on the Silicon
# Integrated Systems SiS 900 and SiS 7016 PCI fast ethernet controller
# chips.
#
# The 'sk' device provides support for the SysKonnect SK-984x series
# PCI gigabit ethernet NICs. This includes the SK-9841 and SK-9842
# single port cards (single mode and multimode fiber) and the
# SK-9843 and SK-9844 dual port cards (also single mode and multimode).
# The driver will autodetect the number of ports on the card and
# attach each one as a separate network interface.
#
# The 'ti' device provides support for PCI gigabit ethernet NICs based
# on the Alteon Networks Tigon 1 and Tigon 2 chipsets. This includes the
# Alteon AceNIC, the 3Com 3c985, the Netgear GA620 and various others.
# Note that you will probably want to bump up NMBCLUSTERS a lot to use
# this driver.
#
# The 'tl' device provides support for the Texas Instruments TNETE100
# series 'ThunderLAN' cards and integrated ethernet controllers. This
# includes several Compaq Netelligent 10/100 cards and the built-in
# ethernet controllers in several Compaq Prosignia, Proliant and
# Deskpro systems. It also supports several Olicom 10Mbps and 10/100
# boards.
#
# The `tx' device provides support for the SMC 9432 TX, BTX and FTX cards.
#
# The `txp' device provides support for the 3Com 3cR990 "Typhoon"
# 10/100 adapters.
#
# The `vr' device provides support for various fast ethernet adapters
# based on the VIA Technologies VT3043 `Rhine I' and VT86C100A `Rhine II'
# chips, including the D-Link DFE530TX (see 'rl' for DFE530TX+), the Hawking 
# Technologies PN102TX, and the AOpen/Acer ALN-320.
#
# The `vx' device provides support for the 3Com 3C590 and 3C595
# early support
#
# The `wb' device provides support for various fast ethernet adapters
# based on the Winbond W89C840F chip. Note: this is not the same as
# the Winbond W89C940F, which is an NE2000 clone.
#
# The `wx' device provides support for the Intel Gigabit Ethernet
# PCI card (`Wiseman').
#
# The `xl' device provides support for the 3Com 3c900, 3c905 and
# 3c905B (Fast) Etherlink XL cards and integrated controllers. This
# includes the integrated 3c905B-TX chips in certain Dell Optiplex and
# Dell Precision desktop machines and the integrated 3c905-TX chips
# in Dell Latitude laptop docking stations.
#
# The `fpa' device provides support for the Digital DEFPA PCI FDDI
# adapter. pseudo-device fddi is also needed.
#
# The `meteor' device is a PCI video capture board. It can also have the
# following options:
#   options METEOR_ALLOC_PAGES=xxx	preallocate kernel pages for data entry
#	figure (ROWS*COLUMN*BYTES_PER_PIXEL*FRAME+PAGE_SIZE-1)/PAGE_SIZE
#   options METEOR_DEALLOC_PAGES	remove all allocated pages on close(2)
#   options METEOR_DEALLOC_ABOVE=xxx	remove all allocated pages above the
#	specified amount. If this value is below the allocated amount no action
#	taken
#   options METEOR_SYSTEM_DEFAULT={METEOR_PAL|METEOR_NTSC|METEOR_SECAM}, used
#	for initialization of fps routine when a signal is not present.
#
# The 'bktr' device is a PCI video capture device using the Brooktree
# bt848/bt848a/bt849a/bt878/bt879 chipset. When used with a TV Tuner it forms a
# TV card, eg Miro PC/TV, Hauppauge WinCast/TV WinTV, VideoLogic Captivator,
# Intel Smart Video III, AverMedia, IMS Turbo, FlyVideo.
#
# options 	OVERRIDE_CARD=xxx
# options 	OVERRIDE_TUNER=xxx
# options 	OVERRIDE_MSP=1
# options 	OVERRIDE_DBX=1
# These options can be used to override the auto detection
# The current values for xxx are found in src/sys/dev/bktr/bktr_card.h
# Using sysctl(8) run-time overrides on a per-card basis can be made
#
# options 	BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_PAL
# or
# options 	BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_NTSC
# Specifes the default video capture mode.
# This is required for Dual Crystal (28&35Mhz) boards where PAL is used
# to prevent hangs during initialisation.  eg VideoLogic Captivator PCI.
#
# options 	BKTR_USE_PLL
# PAL or SECAM users who have a 28Mhz crystal (and no 35Mhz crystal)
# must enable PLL mode with this option. eg some new Bt878 cards.
#
# options 	BKTR_GPIO_ACCESS
# This enable IOCTLs which give user level access to the GPIO port.
#
# options 	BKTR_NO_MSP_RESET
# Prevents the MSP34xx reset. Good if you initialise the MSP in another OS first
#
# options 	BKTR_430_FX_MODE
# Switch Bt878/879 cards into Intel 430FX chipset compatibility mode.
#
# options 	BKTR_SIS_VIA_MODE
# Switch Bt878/879 cards into SIS/VIA chipset compatibility mode which is
# needed for some old SiS and VIA chipset motherboards.
# This also allows Bt878/879 chips to work on old OPTi (<1997) chipset
# motherboards and motherboards with bad or incomplete PCI 2.1 support.
# As a rough guess, old = before 1998
#
#
# The oltr driver supports the following Olicom PCI token-ring adapters
# OC-3136, OC-3137, OC-3139, OC-3140, OC-3141, OC-3540, OC-3250
#
device		ahc		# AHA2940 and onboard AIC7xxx devices
#device		amd		# AMD 53C974 (Teckram DC-390(T))
#device		isp		# Qlogic family
#device		ispfw		# Firmware for QLogic HBAs
#device		ncr		# NCR/Symbios Logic
#device		sym		# NCR/Symbios Logic (newer chipsets)
#
# Options for ISP
#
#	ISP_TARGET_MODE		-	enable target mode operation
#options 	ISP_TARGET_MODE=1

# Options used in dev/sym/ (Symbios SCSI driver).
#options 	SYM_SETUP_LP_PROBE_MAP	#-Low Priority Probe Map (bits)
					# Allows the ncr to take precedence
					# 1 (1<<0) -> 810a, 860
					# 2 (1<<1) -> 825a, 875, 885, 895
					# 4 (1<<2) -> 895a, 896, 1510d 
#options 	SYM_SETUP_SCSI_DIFF	#-HVD support for 825a, 875, 885
					# disabled:0 (default), enabled:1
#options 	SYM_SETUP_PCI_PARITY	#-PCI parity checking
					# disabled:0, enabled:1 (default)
#options 	SYM_SETUP_MAX_LUN	#-Number of LUNs supported
					# default:8, range:[1..64]


# MII bus support is required for some PCI 10/100 ethernet NICs,
# namely those which use MII-compliant transceivers or implement
# tranceiver control interfaces that operate like an MII. Adding
# "device miibus0" to the kernel config pulls in support for
# the generic miibus API and all of the PHY drivers, including a
# generic one for PHYs that aren't specifically handled by an
# individual driver.
device		miibus

# PCI Ethernet NICs that use the common MII bus controller code.
#device		dc		# DEC/Intel 21143 and various workalikes
device		fxp		# Intel EtherExpress PRO/100B (82557, 82558)
#device		pcn		# AMD Am79C97x PCI 10/100 NICs
#device		rl		# RealTek 8129/8139
#device		sf		# Adaptec AIC-6915 (``Starfire'')
#device		sis		# Silicon Integrated Systems SiS 900/SiS 7016
#device		ste		# Sundance ST201 (D-Link DFE-550TX)
#device		tl		# Texas Instruments ThunderLAN
#device		tx		# SMC EtherPower II (83c17x ``EPIC'')
#device		vr		# VIA Rhine, Rhine II
#device		wb		# Winbond W89C840F
#device		xl		# 3Com 3c90x (``Boomerang'', ``Cyclone'')

# PCI Ethernet NICs.
#device		de		# DEC/Intel DC21x4x (``Tulip'')
#device		txp		# 3Com 3cR990 (``Typhoon'')
#device		vx		# 3Com 3c590, 3c595 (``Vortex'')

# Gigabit Ethernet NICs.
#device		bge		# Broadcom BCM570x (``Tigon III'')
#device		gx		# Intel Pro/1000 (82542, 82543)
#device		lge		# Level 1 LXT1001 (``Mercury'')
#device		nge		# NatSemi DP83820 and DP83821
#device		sk		# SysKonnect GEnesis
#device		ti		# Alteon (``Tigon I'', ``Tigon II'')
#device		wx


#device		fpa
#device		meteor
#The oltr driver in the ISA section will also find PCI cards.
#device		oltr0


# Brooktree driver has been ported to the new I2C framework. Thus,
# you'll need to have the following 3 lines in the kernel config.
#     device smbus
#     device iicbus
#     device iicbb
# The iic and smb devices are only needed if you want to control other
# I2C slaves connected to the external connector of some cards.
#
#device		bktr

#
# PCCARD/PCMCIA
#
# card: pccard slots
# pcic: isa/pccard bridge
#device		pcic0 at isa?
#device		pcic1 at isa?
#device		card

# You may need to reset all pccards after resuming
#options 	PCIC_RESUME_RESET	# reset after resume

#
# Laptop/Notebook options:
#
# See also:
#  apm under `Miscellaneous hardware'
# above.

# For older notebooks that signal a powerfail condition (external
# power supply dropped, or battery state low) by issuing an NMI:

#options 	POWERFAIL_NMI	# make it beep instead of panicing

#
# SMB bus
#
# System Management Bus support is provided by the 'smbus' device.
# Access to the SMBus device is via the 'smb' device (/dev/smb*),
# which is a child of the 'smbus' device.
#
# Supported devices:
# smb		standard io through /dev/smb*
#
# Supported SMB interfaces:
# iicsmb	I2C to SMB bridge with any iicbus interface
# bktr		brooktree848 I2C hardware interface
# intpm		Intel PIIX4 (82371AB, 82443MX) Power Management Unit
# alpm		Acer Aladdin-IV/V/Pro2 Power Management Unit
# ichsmb	Intel ICH SMBus controller chips (82801AA, 82801AB, 82801BA)
#
device		smbus		# Bus support, required for smb below.

device		intpm
#device		alpm
#device		ichsmb

device		smb

#
# I2C Bus
#
# Philips i2c bus support is provided by the `iicbus' device.
#
# Supported devices:
# ic	i2c network interface
# iic	i2c standard io
# iicsmb i2c to smb bridge. Allow i2c i/o with smb commands.
#
# Supported interfaces:
# pcf	Philips PCF8584 ISA-bus controller
# bktr	brooktree848 I2C software interface
#
# Other:
# iicbb	generic I2C bit-banging code (needed by lpbb, bktr)
#
device		iicbus		# Bus support, required for ic/iic/iicsmb below.
device		iicbb

device		ic
device		iic
device		iicsmb		# smb over i2c bridge

#device		pcf0	at isa? port 0x320 irq 5

#---------------------------------------------------------------------------
# ISDN4BSD
#
# See /usr/share/examples/isdn/ROADMAP for an introduction to isdn4bsd.
#
# i4b passive ISDN cards support contains the following hardware drivers:
#
#       isic  - Siemens/Infineon ISDN ISAC/HSCX/IPAC chipset driver
#       iwic  - Winbond W6692 PCI bus ISDN S/T interface controller
#       ifpi  - AVM Fritz!Card PCI driver
#       ihfc  - Cologne Chip HFC ISA/ISA-PnP chipset driver
#       ifpnp - AVM Fritz!Card PnP driver 
#       itjc  - Siemens ISAC / TJNet Tiger300/320 chipset
#
# i4b active ISDN cards support contains the following hardware drivers:
#
#       iavc  - AVM B1 PCI, AVM B1 ISA, AVM T1
#
# Note that the ``options'' (if given) and ``device'' lines must BOTH
# be uncommented to enable support for a given card !
#
# In addition to a hardware driver (and probably an option) the mandatory
# ISDN protocol stack devices and the mandatory support device must be 
# enabled as well as one or more devices from the optional devices section.
#
#---------------------------------------------------------------------------
# isic driver (Siemens/Infineon chipsets)
#---------------------------------------------------------------------------
#
# ISA bus non-PnP Cards:
# ----------------------
#
# Teles S0/8 or Niccy 1008
#options 	TEL_S0_8
#device		isic0	at isa? iomem 0xd0000 irq 5 flags 1
#
# Teles S0/16 or Creatix ISDN-S0 or Niccy 1016
#options 	TEL_S0_16
#device		isic0	at isa? port 0xd80 iomem 0xd0000 irq 5 flags 2
#
# Teles S0/16.3
#options 	TEL_S0_16_3
#device		isic0	at isa? port 0xd80 irq 5 flags 3
#
# AVM A1 or AVM Fritz!Card
#options 	AVM_A1
#device		isic0	at isa? port 0x340 irq 5 flags 4
#
# USRobotics Sportster ISDN TA intern
#options 	USR_STI
#device		isic0	at isa? port 0x268 irq 5 flags 7
#
# ITK ix1 Micro ( < V.3, non-PnP version )
#options 	ITKIX1
#device		isic0	at isa? port 0x398 irq 10 flags 18
#
# ELSA PCC-16
#options 	ELSA_PCC16
#device		isic0	at isa? port 0x360 irq 10 flags 20
#
# ISA bus PnP Cards:
# ------------------
#
# Teles S0/16.3 PnP
#options 	TEL_S0_16_3_P
#device		isic
#
# Creatix ISDN-S0 P&P
#options 	CRTX_S0_P
#device		isic
#
# Dr. Neuhaus Niccy Go@
#options 	DRN_NGO
#device		isic
#
# Sedlbauer Win Speed
#options 	SEDLBAUER
#device		isic
#
# Dynalink IS64PH
#options 	DYNALINK 
#device		isic
#
# ELSA QuickStep 1000pro ISA
#options 	ELSA_QS1ISA
#device		isic
#
# ITK ix1 Micro ( V.3, PnP version )
#options 	ITKIX1
#device		isic
#
# Siemens I-Surf 2.0
#options 	SIEMENS_ISURF2
#device		isic
#
# Asuscom ISDNlink 128K ISAC
#options 	ASUSCOM_IPAC
#device 	isic
#
# Eicon Diehl DIVA 2.0 and 2.02
#options       EICON_DIVA
#device 	isic
#
# PCI bus Cards:
# --------------
#
# ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
#options 	ELSA_QS1PCI
#device		isic
#
#---------------------------------------------------------------------------
#       ifpnp driver for AVM Fritz!Card ISA PnP
#---------------------------------------------------------------------------
#
# AVM Fritz!Card ISA PnP
#device ifpnp
#
#---------------------------------------------------------------------------
#       ihfc driver for Cologne Chip ISA chipsets (experimental!)
#---------------------------------------------------------------------------
#
# Teles 16.3c ISA PnP
# AcerISDN P10 ISA PnP
# TELEINT ISDN SPEED No.1
#device ihfc
#
#---------------------------------------------------------------------------
#       ifpi driver for AVM Fritz!Card PCI 1.0 (2.0 unsupported!)
#---------------------------------------------------------------------------
#
# AVM Fritz!Card PCI 1.0
#device  ifpi
#
#---------------------------------------------------------------------------
#       iwic driver for Winbond W6692 chipset
#---------------------------------------------------------------------------
#
# ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards)
#device  iwic
#
#---------------------------------------------------------------------------
#       itjc driver for Simens ISAC / TJNet Tiger300/320 chipset
#---------------------------------------------------------------------------
#
# Traverse Technologies NETjet-S
# Teles PCI-TJ
#device  itjc
#
#---------------------------------------------------------------------------
#       iavc driver (AVM active cards, needs i4bcapi driver!)
#---------------------------------------------------------------------------
#
#pseudo-device   "i4bcapi"	2
#
# AVM B1 PCI
#device          iavc0
#
# AVM B1 ISA bus (PnP mode not supported!)
#device  iavc0 at isa? port 0x150 irq 5
#
#
# ISDN Protocol Stack (mandatory)
# -------------------------------
#
# Q.921 / layer 2 - i4b passive cards D channel handling
#pseudo-device	"i4bq921"
#
# Q.931 / layer 3 - i4b passive cards D channel handling
#pseudo-device	"i4bq931"
#
# layer 4 - i4b common passive and active card handling
#pseudo-device	"i4b"
#
# ISDN devices
# ------------
#
# userland driver to do ISDN tracing (for passive cards only)
#pseudo-device	"i4btrc"	4
#
# userland driver to control the whole thing (mandatory)
#pseudo-device	"i4bctl"
#
# userland driver for access to raw B channel
#pseudo-device	"i4brbch"	4
#
# userland driver for telephony
#pseudo-device	"i4btel"	2
#
# network driver for IP over raw HDLC ISDN
#pseudo-device	"i4bipr"	4
# enable VJ header compression detection for ipr i/f
#options 	IPR_VJ
# enable logging of the first n IP packets to isdnd (n=32 here)
#options	IPR_LOG=32
#
# network driver for sync PPP over ISDN
#pseudo-device	"i4bisppp"	4


# Parallel-Port Bus
#
# Parallel port bus support is provided by the `ppbus' device.
# Multiple devices may be attached to the parallel port, devices
# are automatically probed and attached when found.
#
# Supported devices:
# vpo	Iomega Zip Drive
#	Requires SCSI disk support ('scbus' and 'da'), best
#	performance is achieved with ports in EPP 1.9 mode.
# lpt	Parallel Printer
# plip	Parallel network interface
# ppi	General-purpose I/O ("Geek Port") + IEEE1284 I/O
# pps	Pulse per second Timing Interface
# lpbb	Philips official parallel port I2C bit-banging interface
#
# Supported interfaces:
# ppc	ISA-bus parallel port interfaces.
#

#options		PPC_PROBE_CHIPSET # Enable chipset specific detection
				  # (see flags in ppc(4))
#options 	DEBUG_1284	# IEEE1284 signaling protocol debug
#options 	PERIPH_1284	# Makes your computer act as a IEEE1284
				# compliant peripheral
#options 	DONTPROBE_1284	# Avoid boot detection of PnP parallel devices
#options 	VP0_DEBUG	# ZIP/ZIP+ debug
#options 	LPT_DEBUG	# Printer driver debug
#options 	PPC_DEBUG	# Parallel chipset level debug
#options 	PLIP_DEBUG	# Parallel network IP interface debug
#options		PCFCLOCK_VERBOSE         # Verbose pcfclock driver
#options		PCFCLOCK_MAX_RETRIES=5   # Maximum read tries (default 10)

device		ppc0	at isa? irq 7
device		ppbus
#device		vpo
device		lpt
device		plip
#device		ppi
#device		pps
#device		lpbb
#device		pcfclock

# Kernel BOOTP support

#options 	BOOTP		# Use BOOTP to obtain IP address/hostname
#options 	BOOTP_NFSROOT	# NFS mount root filesystem using BOOTP info
#options 	BOOTP_NFSV3	# Use NFS v3 to NFS mount root
#options 	BOOTP_COMPAT	# Workaround for broken bootp daemons.
#options 	BOOTP_WIRED_TO=fxp0 # Use interface fxp0 for BOOTP

#
# Add tie-ins for a hardware watchdog.  This only enable the hooks;
# the user must still supply the actual driver.
#
#options 	HW_WDOG

#
# Set the number of PV entries per process.  Increasing this can
# stop panics related to heavy use of shared memory. However, that can
# (combined with large amounts of physical memory) cause panics at
# boot time due the kernel running out of VM space.
#
# If you're tweaking this, you might also want to increase the sysctls
# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
#
# The value below is the one more than the default.
#
#options 	PMAP_SHPGPERPROC=201

#
# Change the size of the kernel virtual address space.  Due to
# constraints in loader(8) on i386, this must be a multiple of 4.
# 256 = 1 GB of kernel address space.  Increasing this also causes
# a reduction of the address space in user processes.  512 splits
# the 4GB cpu address space in half (2GB user, 2GB kernel).
#
#options 	KVA_PAGES=260

#
# Disable swapping. This option removes all code which actually performs
# swapping, so it's not possible to turn it back on at run-time.
#
# This is sometimes usable for systems which don't have any swap space
# (see also sysctls "vm.defer_swapspace_pageouts" and
# "vm.disable_swapspace_pageouts")
#
#options 	NO_SWAPPING

# Set the number of sf_bufs to allocate. sf_bufs are virtual buffers
# for sendfile(2) that are used to map file VM pages, and normally
# default to a quantity that is roughly 16*MAXUSERS+512. You would
# typically want about 4 of these for each simultaneous file send.
#
#options 	NSFBUFS=1024

# Set the size of the buffer cache KVM reservation, in buffers.  This is
# scaled by approximately 16384 bytes.  The system will auto-size the buffer
# cache if this option is not specified.
#
#options 	NBUF=512

# Set the size of the mbuf KVM reservation, in clusters.  This is scaled
# by approximately 2048 bytes.  The system will auto-size the mbuf area
# to (512 + maxusers*16) if this option is not specified.
# maxusers is in turn computed at boot time depending on available memory
# or set to the value specified by "options MAXUSERS=x" (x=0 means
# autoscaling).
# So, to take advantage of autoscaling, you have to remove both
# NMBCLUSTERS and MAXUSERS (and NMBUFS) from your kernel config.
#
#options 	NMBCLUSTERS=1024

# Set the number of mbufs available in the system. Each mbuf
# consumes 256 bytes. The system will autosize this (to 4 times
# the number of NMBCLUSTERS, depending on other constraints)
# if this option is not specified.
#
#options		NMBUFS=4096

# Tune the kernel malloc area parameters.  VM_KMEM_SIZE represents the 
# minimum, in bytes, and is typically (12*1024*1024) (12MB). 
# VM_KMEM_SIZE_MAX represents the maximum, typically 200 megabytes.
# VM_KMEM_SIZE_SCALE can be set to adjust the auto-tuning factor, which
# typically defaults to 4 (kernel malloc area size is physical memory 
# divided by the scale factor).
#
#options 	VM_KMEM_SIZE="(10*1024*1024)"
#options 	VM_KMEM_SIZE_MAX="(100*1024*1024)"
#options 	VM_KMEM_SIZE_SCALE="4"

# Tune the buffer cache maximum KVA reservation, in bytes.  The maximum is
# usually capped at 200 MB, effecting machines with > 1GB of ram.  Note
# that the buffer cache only really governs write buffering and disk block
# translations.  The VM page cache is our primary disk cache and is not
# effected by the size of the buffer cache.
#
#options		VM_BCACHE_SIZE_MAX="(100*1024*1024)"

# Tune the swap zone KVA reservation, in bytes.  The default is typically
# 70 MB, giving the system the ability to manage a maximum of 28GB worth
# of swapped out data.  
#
#options		VM_SWZONE_SIZE_MAX="(50*1024*1024)"

#
# Enable extra debugging code for locks.  This stores the filename and
# line of whatever acquired the lock in the lock itself, and change a
# number of function calls to pass around the relevant data.  This is
# not at all useful unless you are debugging lock code.  Also note
# that it is likely to break e.g. fstat(1) unless you recompile your
# userland with -DDEBUG_LOCKS as well.
#
#options 	DEBUG_LOCKS

# Set the amount of time (in seconds) the system will wait before
# rebooting automatically when a kernel panic occurs.  If set to (-1),
# the system will wait indefinitely until a key is pressed on the
# console.
#options 	PANIC_REBOOT_WAIT_TIME=16

#
# SysVR4 ABI emulation
#
# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
# a KLD module.  
# The STREAMS network emulation code can also be compiled statically or as a 
# module.  If loaded as a module, it must be loaded before the svr4 module
# (the /usr/sbin/svr4 script does this for you).  If compiling statically,
# the `streams' pseudo-device must be configured into any kernel which also
# specifies COMPAT_SVR4.  It is possible to have a statically-configured 
# STREAMS device and a dynamically loadable svr4 emulator;  the /usr/sbin/svr4
# script understands that it doesn't need to load the `streams' module under
# those circumstances.
# Caveat:  At this time, `options KTRACE' is required for the svr4 emulator
# (whether static or dynamic).  
# 
#options		COMPAT_SVR4	# build emulator statically
#options		DEBUG_SVR4	# enable verbose debugging
#pseudo-device	streams		# STREAMS network driver (required for svr4).

# The 'asr' driver provides support for current DPT/Adaptec SCSI RAID
# controllers (SmartRAID V and VI and later).
# These controllers require the CAM infrastructure.
#
#device		asr

# The 'dpt' driver provides support for DPT controllers (http://www.dpt.com/).
# These have hardware RAID-{0,1,5} support, and do multi-initiator I/O.
# The DPT controllers are commonly re-licensed under other brand-names -
# some controllers by Olivetti, Dec, HP, AT&T, SNI, AST, Alphatronic, NEC and
# Compaq are actually DPT controllers.
#
# See src/sys/dev/dpt for debugging and other subtle options.
#   DPT_MEASURE_PERFORMANCE Enables a set of (semi)invasive metrics. Various
#                           instruments are enabled.  The tools in
#                           /usr/sbin/dpt_* assume these to be enabled.
#   DPT_HANDLE_TIMEOUTS     Normally device timeouts are handled by the DPT.
#                           If you ant the driver to handle timeouts, enable
#                           this option.  If your system is very busy, this
#                           option will create more trouble than solve.
#   DPT_TIMEOUT_FACTOR      Used to compute the excessive amount of time to
#                           wait when timing out with the above option.
#  DPT_DEBUG_xxxx           These are controllable from sys/dev/dpt/dpt.h
#  DPT_LOST_IRQ             When enabled, will try, once per second, to catch
#                           any interrupt that got lost.  Seems to help in some
#                           DPT-firmware/Motherboard combinations.  Minimal
#                           cost, great benefit.
#  DPT_RESET_HBA            Make "reset" actually reset the controller
#                           instead of fudging it.  Only enable this if you
#			    are 100% certain you need it.

#device		dpt

# DPT options
#!CAM# options 	DPT_MEASURE_PERFORMANCE
#!CAM# options 	DPT_HANDLE_TIMEOUTS
#options 	DPT_TIMEOUT_FACTOR=4
#options 	DPT_LOST_IRQ
#options 	DPT_RESET_HBA
#options 	DPT_ALLOW_MEMIO

#
# Compaq "CISS" RAID controllers (SmartRAID 5* series)
# These controllers have a SCSI-like interface, and require the
# CAM infrastructure.
#
#device		ciss

#
# Mylex AcceleRAID and eXtremeRAID controllers with v6 and later
# firmware.  These controllers have a SCSI-like interface, and require
# the CAM infrastructure.
#
#device          mly

# USB support
# UHCI controller
#device		uhci
# OHCI controller
#device		ohci
# General USB code (mandatory for USB)
#device		usb
#
# Fm Radio
#device		ufm
# Generic USB device driver
#device		ugen
# Human Interface Device (anything with buttons and dials)
#device		uhid
# USB keyboard
#device		ukbd
# USB printer
#device		ulpt
# USB Iomega Zip 100 Drive (Requires scbus and da)
#device		umass
# USB modem support
#device		umodem
# USB mouse
#device		ums
# USB Rio (MP3 Player)
#device		urio
# USB scanners
#device		uscanner
#
# ADMtek USB ethernet. Supports the LinkSys USB100TX,
# the Billionton USB100, the Melco LU-ATX, the D-Link DSB-650TX
# and the SMC 2202USB. Also works with the ADMtek AN986 Pegasus
# eval board.
#device		aue
#
# CATC USB-EL1201A USB ethernet. Supports the CATC Netmate
# and Netmate II, and the Belkin F5U111.
#device		cue
#
# Kawasaki LSI ethernet. Supports the LinkSys USB10T,
# Entrega USB-NET-E45, Peracom Ethernet Adapter, the
# 3Com 3c19250, the ADS Technologies USB-10BT, the ATen UC10T,
# the Netgear EA101, the D-Link DSB-650, the SMC 2102USB
# and 2104USB, and the Corega USB-T.
#device		kue

# debugging options for the USB subsystem
#
#options 	UHCI_DEBUG
#options 	OHCI_DEBUG
#options 	USB_DEBUG

#options 	UGEN_DEBUG
#options 	UHID_DEBUG
#options 	UHUB_DEBUG
#options 	UKBD_DEBUG
#options 	ULPT_DEBUG
#options 	UMASS_DEBUG
#options 	UMS_DEBUG

# options for ukbd:
#options 	UKBD_DFLT_KEYMAP	# specify the built-in keymap
#makeoptions	UKBD_DFLT_KEYMAP=it.iso

#
# Embedded system options:
#
# An embedded system might want to run something other than init.
#options 	INIT_PATH="/sbin/init:/stand/sysinstall"

# Debug options
#options 	BUS_DEBUG       # enable newbus debugging
#options 	DEBUG_VFS_LOCKS # enable vfs lock debugging
#options 	NPX_DEBUG       # enable npx debugging (FPU/math emu)

# More undocumented options for linting.
# Note that documenting these are not considered an affront.

options 	AHC_DUMP_EEPROM
options 	AHC_TMODE_ENABLE
#options 	CAM_DEBUG_DELAY
#options 	CLUSTERDEBUG
#options 	COMPAT_LINUX
options 	CPU_UPGRADE_HW_CACHE
#options 	DEBUG
#options 	DEBUG_LINUX
#options 	DISABLE_PSE
#options 	ENABLE_ALART
#options 	ENABLE_VFS_IOOPT
#options 	FB_DEBUG
#options 	FB_INSTALL_CDEV
#options 	FE_8BIT_SUPPORT
#options 	I4B_SMP_WORKAROUND
#options 	I586_PMC_GUPROF=0x70000
#options 	IBCS2
#options 	KBDIO_DEBUG=2
#options 	KBD_MAXRETRY=4
#options 	KBD_MAXWAIT=6
#options 	KBD_RESETDELAY=201
#options 	KEY
#options 	LOCKF_DEBUG
#options 	LOUTB
#options 	NETATALKDEBUG
#options 	OLTR_NO_BULLSEYE_MAC
#options 	OLTR_NO_HAWKEYE_MAC
#options 	OLTR_NO_TMS_MAC
#options 	PNPBIOS
#options 	PSM_DEBUG=1
#options 	SCSI_NCR_DEBUG
#options 	SCSI_NCR_MAX_SYNC=10000
#options 	SCSI_NCR_MAX_WIDE=1
#options 	SCSI_NCR_MYADDR=7
#options 	SC_DEBUG_LEVEL
#options 	SC_RENDER_DEBUG
#options 	SHOW_BUSYBUFS	# List buffers that prevent root unmount
#options 	SIMPLELOCK_DEBUG
#options 	SI_DEBUG
#options 	SLIP_IFF_OPTS
#options 	SPX_HACK
#options 	TIMER_FREQ="((14318182+6)/12)"
#options 	VFS_BIO_DEBUG
#options		XBONEHACK


Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020607233917.J37924-300000>