#
# desktop machines
#

machine		i386

option		CITI

option		I486_CPU
option		I586_CPU
option		I686_CPU

option		XSERVER
option		APERTURE	# in-kernel aperture driver for XFree86
option		BOOT_CONFIG	# add support for boot -c

option		TIMEZONE=300
option		DST=0
option		NTP		# High precision timekeeping support

option		SWAPPAGER	# paging; REQUIRED
option		DEVPAGER	# mmap() of devices

option		DDB		# in-kernel debugger
option		DIAGNOSTIC	# internal consistency checks
option		KTRACE		# system call tracing, a la ktrace(1)
option		LKM		# needed for afs
option		CRYPTO		# Cryptographic framework
option		UVM

option		SYSVMSG		# System V-like message queues
option		SYSVSEM		# System V-like semaphores
option		SYSVSHM		# System V-like memory sharing

option		COMPAT_43	# and 4.3BSD
option		COMPAT_LINUX	# binary compatibility with Linux
option		COMPAT_FREEBSD	# binary compatibility with FreeBSD
option		COMPAT_BSDOS	# binary compatibility with BSD/OS

option		FFS		# UFS
option		FFS_SOFTUPDATES	# Soft updates
option		CD9660		# ISO 9660 + Rock Ridge file system
option		EXT2FS		# Linux ext2fs
option		MSDOSFS		# MS-DOS file system
option		FIFO		# FIFOs; RECOMMENDED
option		KERNFS		# /kern
option		NULLFS		# loopback file system
option		PROCFS		# /proc
option		UNION		# union file system

option		NFSCLIENT	# Network File System client

option		GATEWAY		# packet forwarding
option		INET		# IP + ICMP + TCP + UDP
option		INET6		# IPv6 (needs INET)
option		IPSEC		# IPsec
option		TCP_SACK	# Selective Acknowledgements for TCP
option		PPP_DEFLATE
option		NETATALK

maxusers	64

config		bsd	swap generic

mainbus0 at root

bios0	at mainbus0
apm0	at bios0 flags 0x0000	# flags 0x0101 to force protocol version 1.1
pcibios0 at bios0 flags 0x0000	# use 0x30 for a total verbose

isa0	at mainbus0
isa0	at pcib?
pci*	at mainbus0 bus ?

option		PCIVERBOSE
option		PCMCIAVERBOSE
option		USBVERBOSE

pchb*	at pci? dev ? function ?	# PCI-Host bridges
ppb*	at pci? dev ? function ?	# PCI-PCI bridges
pci*	at ppb? bus ?
pci*	at pchb? bus ?
pcib*	at pci? dev ? function ?	# PCI-ISA bridges (do nothing)

# ISA PCMCIA controllers
pcic0	at isa? port 0x3e0 iomem 0xd0000 iosiz 0x10000
pcic1	at isa? port 0x3e2 iomem 0xe0000 iosiz 0x4000

# ISA Plug-and-Play PCMCIA controllers
pcic*	at isapnp?

# PCI PCMCIA controllers
pcic*	at pci? dev? function ?

# PCMCIA bus support
pcmcia*	at pcic? controller ? socket ?

# CardBus bus support
cardbus*	at cardslot?
pcmcia*		at cardslot?
cbb*		at pci? dev ? function ?
cardslot*	at cbb?

# PCI USB Controllers
uhci*	at pci?				# Universal Host Controller (Intel)
ohci*	at pci?				# Open Host Controller

# USB bus support
usb*	at uhci?
usb*	at ohci?

uhub*	at usb?				# USB Hubs
uhub*	at uhub? port ? configuration ?	# USB Hubs
uhid*	at uhub? port ? configuration ?	# USB Generic HID devices
umodem*	at uhub? port ? configuration ?	# USB Modems/Serial
ucom*	at umodem?
uvisor*	at uhub? port ? configuration ?	# Handspring Visor
ucom*	at uvisor?
uftdi*	at uhub? port ?
ucom*	at uftdi? portno ?
uaudio* at uhub? port ? configuration ?	# USB Audio
ulpt*	at uhub? port ? configuration ? # USB Printers
ukbd*	at uhub? port ? configuration ?	# USB Keyboards
wskbd*	at ukbd? console ? mux 1
umass*	at uhub? port ? configuration ? # USB Mass Storage devices
scsibus* at umass?
ums*	at uhub? port ? configuration ?	# USB Mice
wsmouse* at ums? mux 0
aue*	at uhub? port ?			# ADMtek AN986 Pegasus Ethernet
cue*	at uhub? port ?			# CATC USB-EL1201A based Ethernet
kue*	at uhub? port ?			# Kawasaki KL5KUSB101B based Ethernet
upl*	at uhub? port ?			# Prolific PL2301/PL2302 host-to-host `network'
urio*	at uhub? port ?			# Diamond Multimedia Rio 500
uscanner* at uhub? port ?		# USB Scanners
usscanner* at uhub? port ?		# USB SCSI scanners, e.g., HP5300
scsibus* at usscanner?
#uyap*	at uhub? port ?			# Y@P firmware loader
ugen*	at uhub? port ? configuration ? # USB Generic driver

puc*	at pci?				# PCI "universal" communication device

npx0	at isa? port 0xf0 irq 13	# math coprocessor
isadma0	at isa?
isapnp0	at isa?

option	WSDISPLAY_COMPAT_USL		# VT handling
option	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
option	WSDISPLAY_DEFAULTSCREENS=6
option	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
option	WS_KERNEL_FG=WSCOL_CYAN
option	WS_KERNEL_BG=WSCOL_BLACK

pckbc0		at isa?			# PC keyboard controller
pckbd*		at pckbc?		# PC keyboard
pms*		at pckbc?		# PS/2 mouse for wsmouse
pmsi*		at pckbc?		# PS/2 "Intelli"mouse for wsmouse
vga0		at isa?
vga*		at pci? dev ? function ?
pcdisplay0	at isa?			# CGA, MDA, EGA, HGA
wsdisplay*	at vga? console ?
wsdisplay*	at pcdisplay? console ?
wskbd*		at pckbd? console ?
wsmouse*	at pms? mux 0
wsmouse*	at pmsi? mux 0

pcppi0		at isa?
sysbeep0	at pcppi?

# Serial ports
pccom0	at isa? port 0x3f8 irq 4	# standard PC serial ports
pccom1	at isa? port 0x2f8 irq 3
pccom2	at isa? port 0x3e8 irq 5
rtfps0	at isa? port 0x1230 irq 9	# RT 4-port serial cards
pccom2	at rtfps? slave ?
pccom*	at rtfps? slave ?
pccom*	at pcmcia? function ?		# PCMCIA modems/serial ports
pccom*	at isapnp?

lpt0	at isa? port 0x378 irq 7	# standard PC parallel ports

lms0	at isa? port 0x23c irq 5	# Logitech bus mouse
lms1	at isa? port 0x238 irq 5
mms0	at isa? port 0x23c irq 5	# Microsoft InPort mouse
mms1	at isa? port 0x238 irq 5

wsmouse*	at lms? mux 0
wsmouse*	at mms? mux 0

# SCSI
aha0	at isa? port 0x330 irq ? drq ?	# Adaptec 154[02] SCSI controllers
aha1	at isa? port 0x334 irq ? drq ?	# Soundblaster wants 0x330
scsibus* at aha?
ahc*	at pci? dev ? function ?	# Adaptec 2940 SCSI controllers
scsibus* at ahc?
siop*	at pci? dev ? function ?	# NCR 538XX SCSI controllers(new)
scsibus* at siop?

sd*	at scsibus? target ? lun ?	# SCSI disk drives
cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
uk*	at scsibus? target ? lun ?	# unknown SCSI

# Floppy
fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
fd0	at fdc0 drive 0 flags 0x32	# don't auto-detect, assume 1.44 MB
fd1	at fdc0 drive 1

# IDE controllers
pciide* at pci ? dev ? function ? flags 0x0000

wdc0	at isa? port 0x1f0 irq 14 flags 0x00
wdc1	at isa? port 0x170 irq 15 flags 0x00
wdc*	at pcmcia? function ?
wdc*	at isapnp?

# IDE hard drives
wd*	at wdc? channel ? drive ? flags 0x0000
wd*	at pciide? channel ? drive ? flags 0x0000

# ATAPI<->SCSI
atapiscsi* at wdc? channel ?
atapiscsi* at pciide? channel ?
scsibus* at atapiscsi?

# Network
dc*	at pci? dev ? function ?		# 21143, "tulip" clone ethernet
#de*	at pci? dev ? function ?		# DC21X4X-based ethernet cards
ec0	at isa? port 0x250 iomem 0xd8000 irq 9	# 3C503 ethernet
ep0	at isa? port ? irq ?			# 3C509 ethernet cards
ep*	at isapnp?				# 3C509 PnP ethernet cards
ep0	at pci? dev ? function ?		# 3C59x ethernet cards
ep0	at pcmcia? function ?			# PCMCIA based 3C5xx cards
fxp*	at pci? dev ? function ?		# EtherExpress 10/100B ethernet
le*	at pci? dev ? function ?		# PCnet-PCI based ethernet
ne*	at pcmcia? function ?			# PCMCIA based NE2000 cards
sm*	at pcmcia? function ?			# PCMCIA based sm cards
wi*	at pcmcia? function ?			# WaveLAN IEEE 802.11
xl*	at pci? dev ? function ?		# 3C9xx ethernet
xl*	at cardbus? dev ? function ?		# 3C575/3C656 ethernet

# Media Independent Interface (mii) drivers
exphy*	at mii? phy ?				# 3Com internal PHYs
inphy*	at mii? phy ?				# Intel 82555 PHYs
iophy*	at mii? phy ?				# Intel 82553 PHYs
icsphy*	at mii? phy ?				# ICS 1890 PHYs
lxtphy*	at mii? phy ?				# Level1 LXT970 PHYs
nsphy*	at mii? phy ?				# NS and compatible PHYs
nsphyter*	at mii? phy ?			# NS and compatible PHYs
qsphy*	at mii? phy ?				# Quality Semi QS6612 PHYs
sqphy*	at mii? phy ?				# Seeq 8x220 PHYs
rlphy* at mii? phy ?				# RealTek 8139 internal PHYs
#mtdphy*	at mii? phy ?			# Myson MTD972 PHYs
dcphy*	at mii? phy ?				# Digital Clone PHYs
amphy*	at mii? phy ?				# AMD 79C873 PHYs
tqphy*	at mii? phy ?				# TDK 78Q212x PHYs
bmtphy*	at mii? phy ?				# Broadcom 10/100 PHYs
brgphy*	at mii? phy ?				# Broadcom Gigabit PHYs
eephy* at mii? phy ?				# Marvell 88E1000 series PHY
xmphy*	at mii? phy ?				# XaQti XMAC-II PHYs
ukphy*	at mii? phy ?				# "unknown" PHYs

# Audio

pss0	at isa? port 0x220 irq 7 drq 6		# Personal Sound System
sp0	at pss0 port 0x530 irq 10 drq 0		# sound port driver

eap*	at pci? dev ? function ?		# Ensoniq AudioPCI S5016
eso*	at pci? dev ? function ?		# ESS Solo-1 PCI AudioDrive
sv*	at pci? dev ? function ?		# S3 SonicVibes (S3 617)
neo*	at pci? dev ? function ?		# NeoMagic 256AV/ZX
cmpci*	at pci? dev ? function ?		# C-Media CMI8338/8738
auich*	at pci? dev ? function ?		# i82801 ICH AC'97 audio
clcs*	at pci? dev ? function ?		# CS4280 CrystalClear audio
clct*	at pci? dev ? function ?		# CS4281 CrystalClear audio
fms*	at pci? dev ? function ?		# Forte Media FM801
auvia*	at pci? dev ? function ?		# VIA VT82C686A
maestro* at pci? dev ? function ?		# ESS Maestro PCI
yds*	at pci? dev ? function ?		# Yamaha YMF Audio
sb0	at isa? port 0x220 irq 5 drq 1		# SoundBlaster
sb*	at isapnp?
ess*	at isapnp?				# ESS Tech ES188[78], ES888
wss0	at isa? port 0x530 irq 10 drq 0		# Windows Sound System
wss*	at isapnp?
pas0	at isa? port 0x220 irq 7 drq 1		# ProAudio Spectrum
gus0	at isa? disable port 0x220 irq 7 drq 1 drq2 6 # Gravis (drq2 is record drq)
ym*	at isapnp?
mpu*	at isapnp?

# OPL[23] FM syntheziers
#opl0	at isa? port 0x388	# use only if not attached to sound card
opl*	at eso?
opl*	at sb?
opl*	at ess?
opl*	at yds?

# MIDI support
midi*	at pcppi?		# MIDI interface to the PC speaker
midi*	at sb?			# SB MPU401 port
midi*	at opl?			# OPL FM synth
midi*	at ym?
midi*	at mpu?

# The spkr driver provides a simple tone interface to the built in speaker.
#spkr0	at pcppi?		# PC speaker

#Audio Support
audio*	at sb?
audio*	at gus?
audio*	at pas?
audio*	at sp?
audio*	at ess?
audio*	at wss?
audio*	at ym?
audio*	at eap?
audio*	at eso?
audio*	at sv?
audio*	at neo?
audio*	at cmpci?
audio*	at clcs?
audio*	at clct?
audio*	at auich?
audio*	at fms?
audio*	at auvia?
audio*	at uaudio?
audio*	at maestro?
audio*	at yds?

bktr0	at pci? dev ? function ?

# crypto support
hifn*	at pci? dev ? function ?	# Hi/fn 7751 crypto card
ubsec*	at pci? dev ? function ?	# Bluesteel Networks 5xxx crypto card
#ises*	at pci? dev ? function ?	# Pijnenburg PCC-ISES

pseudo-device	loop		1	# network loopback
pseudo-device	bpfilter	8	# packet filter
pseudo-device	ppp		6	# PPP
pseudo-device	tun		2	# network tunneling over tty
pseudo-device	ksyms		1	# kernel symbols device
pseudo-device	enc		1	# IPSEC needs the encapsulation interface
pseudo-device	gre		1	# GRE encapsulation interface
pseudo-device	pctr		1
pseudo-device	mtrr		1	# Memory range attributes control

pseudo-device	pty		64	# pseudo-terminals
pseudo-device	vnd		4	# paging to files

# mouse & keyboard multiplexor pseudo-devices
pseudo-device	wsmux		2

# for IPv6
pseudo-device	gif		4
#pseudo-device	faith		1
