Subject: port-i386/11157: presence of apm panics my dell inspiron 5000e
To: None <>
From: None <>
List: netbsd-bugs
Date: 10/07/2000 05:57:19
>Number:         11157
>Category:       port-i386
>Synopsis:       presence of apm panics my dell inspiron 5000e
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    port-i386-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Oct 07 05:57:00 PDT 2000
>Originator:     Luke Mewburn
>Release:        netbsd-1-5 as of a few days ago
Wasabi Systems
System: NetBSD 1.5_ALPHA2 NetBSD 1.5_ALPHA2 (ARGO) #1: Sun Oct 1 18:46:30 EST 2000 i386

	when i put apm0 in my kernel my laptop (a Dell Inspiron 5000e) panics
	with a uvm_fault() just after it probes apm0.

	enabling various apm debug options (and a few printf()s
	chucked in for good measure) leads me to think it's the 
		apmcall(APM_POWER_STATUS, regs);
	in apm.c::apm_get_powstat() which is triggering the fault.

	i've attached the relevant dmesg and kernel config

	put apm0 in your kernel config. compile & install kernel.
	watch the box crash n burn.


--- cut here --- file: dmesg.apmdebug
NetBSD 1.5_ALPHA2 (ODYSSEUS) #13: Thu Oct  5 10:01:15 EST 2000
cpu0: Intel Pentium III (E) (686-class)
total memory = 127 MB
avail memory = 115 MB
using 1658 buffers containing 6632 KB of memory
BIOS32 rev. 0 found at 0xfd890
PCI BIOS rev. 2.1 found at 0xfd9ae
pcibios: config mechanism [1][x], special cycles [x][x], last bus 1
PCI IRQ Routing Table rev. 1.0 found at 0xfdf50, size 144 bytes (7 entries)
PCI Interrupt Router at 000:07:0 (Intel 82371FB PCI-to-ISA Bridge (PIIX))
  device vendor product pin PIRQ IRQ stage
000:04:0 0x104c 0xac1c   A  0x00  11  0    fixed up
000:04:1 0x104c 0xac1c   A  0x00  11  0    fixed up
000:07:2 0x8086 0x7112   D  0x03   5  0    already assigned
000:08:0 0x125d 0x1978   A  0x03   5  0    already assigned
001:00:0 0x1002 0x4c46   A  0x00  11  0    already assigned
PCI bridge 0: primary 0, secondary 1, subordinate 1
PCI bridge 1: primary 0, secondary 2, subordinate 2
PCI bridge 2: primary 0, secondary 3, subordinate 3
PCI bus #3 is the last bus
[System BIOS Setting]-----------------------
  device vendor product
  register space address    size
000:00:0 0x8086 0x7190 
	10h mem  0xe0000000 0x04000000
000:01:0 0x8086 0x7191 
000:04:0 0x104c 0xac1c 
	10h mem  0x08000000 0x00001000
000:04:1 0x104c 0xac1c 
	10h mem  0x08001000 0x00001000
000:07:0 0x8086 0x7110 
000:07:1 0x8086 0x7111 
	20h port 0x00001050 0x00000010
000:07:2 0x8086 0x7112 
	20h port 0x00001060 0x00000020
000:07:3 0x8086 0x7113 
000:08:0 0x125d 0x1978 
	10h port 0x00001400 0x00000100
001:00:0 0x1002 0x4c46 
	10h mem  0xf8000000 0x04000000
	14h port 0x00002000 0x00000100
	18h mem  0xf4000000 0x00004000
--------------------------[  0 devices bogus]
 Physical memory end: 0x07fdf000
 PCI memory mapped I/O space start: 0x08000000
mainbus0 (root)
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled
pchb0 at pci0 dev 0 function 0
pchb0: Intel 82443BX Host Bridge/Controller (rev. 0x03)
ppb0 at pci0 dev 1 function 0: Intel 82443BX AGP Interface (rev. 0x03)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
vga1 at pci1 dev 0 function 0: ATI Technologies product 0x4c46 (rev. 0x02)
wsdisplay0 at vga1: console (80x25, vt100 emulation)
cbb0 at pci0 dev 4 function 0: Texas Instruments PCI1225 PCI-CardBus Bridge (rev. 0x01)
cbb1 at pci0 dev 4 function 1: Texas Instruments PCI1225 PCI-CardBus Bridge (rev. 0x01)
pcib0 at pci0 dev 7 function 0
pcib0: Intel 82371AB PCI-to-ISA Bridge (PIIX4) (rev. 0x02)
pciide0 at pci0 dev 7 function 1: Intel 82371AB IDE controller (PIIX4) (rev. 0x01)
pciide0: bus-master DMA support present
pciide0: primary channel wired to compatibility mode
wd0 at pciide0 channel 0 drive 0: <IBM-DJSA-210>
wd0: drive supports 16-sector pio transfers, lba addressing
wd0: 9590 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 19640880 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 4
pciide0: primary channel interrupting at irq 14
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (using DMA data transfers)
pciide0: secondary channel wired to compatibility mode
pciide0: disabling secondary channel (no drives)
uhci0 at pci0 dev 7 function 2: Intel 82371AB USB Host Controller (PIIX4) (rev. 0x01)
uhci0: interrupting at irq 5
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
Intel 82371AB Power Management Controller (PIIX4) (miscellaneous bridge, revision 0x03) at pci0 dev 7 function 3 not configured
ESS Technology Inc Maestro 2E PCI Audio Accelerator (audio multimedia, revision 0x10) at pci0 dev 8 function 0 not configured
cbb0: interrupting at irq 11
cbb0: cacheline 0x0 lattimer 0x20
cbb0: bhlc 0x821000 lscp 0x20020200
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 2 device 0 cacheline 0x0, lattimer 0x20
pcmcia0 at cardslot0
cbb1: interrupting at irq 11
cbb1: cacheline 0x0 lattimer 0x20
cbb1: bhlc 0x821000 lscp 0x20030300
cardslot1 at cbb1 slot 1 flags 0
cardbus1 at cardslot1: bus 3 device 0 cacheline 0x0, lattimer 0x20
pcmcia1 at cardslot1
isa0 at pcib0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
lpt0 at isa0 port 0x378-0x37b irq 7
pcppi0 at isa0 port 0x61
midi0 at pcppi0: PC speaker
sysbeep0 at pcppi0
isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
npx0 at isa0 port 0xf0-0xff: using exception 16
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
isapnp0: no ISA Plug 'n Play devices found
apm: bioscall return: 102 504d 3 0 c0630202<IEN> 0 0
apm0 at mainbus0: bioscall return: dead0102 ffff504d c0350003 0 dead0202<IEN> c0300000 c0630000
apm0: bioscall return: dead0304 ffff0000 c0350000 0 dead0247<IEN,ZF,PF,CY> c0300000 c0630000
apm0: bioscall return: deadf000 5c3c c035f000 40 dead0282<IEN,NF> ffffffff c063ffff
apm0: data segment oversized: [400,103ff); resized to [400,1000)
apm0: code32len=ffff, datalen=c00
apm0: mapping bios data area 400 @ 0xc986e400
apm0: detail 30102 32b:f0000/0xc03ff000/ffff 16b:f0000/0xc03ff000/ffff data 400/0xc030f400/c00 ep 5c3c (30:0xc0404c3c) 0xc03642b0
apm0: apmcall: func 14 from line 808 -> 0x0
Power Management spec V1.2
apmcall: func 16 from line 769 -> 0x0
apm: 2 batteries, global standby, global suspend, rtimer standby, rtimer suspend
apmcall: func 15 from line 680 -> 0x0
before get_powstat
apmcall: func 10 from line 850uvm_fault(0xc0352f20, 0xe000, 0, 1) -> 1

The operating system has halted.
Please press any key to reboot.
--- cut here ---

--- cut here --- file: ODYSSEUS
#	from:
#	CARDBUS,v 2000/09/20 18:29:30 thorpej Exp

include "arch/i386/conf/std.i386"

maxusers	32		# estimated number of users

# CPU support.  At least one is REQUIRED.
options 	I686_CPU

# CPU-related options.
#options 	VM86		# virtual 8086 emulation
# eliminate delay no-ops in I/O; recommended on all but very old machines
options 	DUMMY_NOPS

# Standard system options

options 	UCONSOLE	# users can use TIOCCONS (for xconsole)
options 	INSECURE	# disable kernel security levels

options 	RTC_OFFSET=-660	# hardware clock is this many mins. west of GMT
options 	NTP		# NTP phase/frequency locked loop

options 	KTRACE		# system call tracing via ktrace(1)

options 	SYSVMSG		# System V-like message queues
options 	SYSVSEM		# System V-like semaphores
options 	SYSVSHM		# System V-like memory sharing
#options 	SHMMAXPGS=1024	# 1024 pages is the default

# Diagnostic/debugging support options
options 	DIAGNOSTIC	# cheap kernel consistency checks
#options 	DEBUG		# expensive debugging checks/support
options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
options 	DDB		# in-kernel debugger
options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
makeoptions	DEBUG="-g"	# compile full symbol table

# Compatibility options
options 	COMPAT_14	# NetBSD 1.4,

options 	COMPAT_SVR4	# binary compatibility with SVR4
options 	COMPAT_LINUX	# binary compatibility with Linux
options 	COMPAT_FREEBSD	# binary compatibility with FreeBSD

options 	COMPAT_AOUT	# binary compat for NetBSD a.out binaries

# File systems
file-system 	FFS		# UFS
file-system 	MFS		# memory file system
file-system 	NFS		# Network File System client
file-system 	NTFS		# Windows/NT file system (experimental)
file-system 	CD9660		# ISO 9660 + Rock Ridge file system
file-system 	MSDOSFS		# MS-DOS file system
file-system 	FDESC		# /dev/fd
file-system 	KERNFS		# /kern
file-system 	NULLFS		# loopback file system
file-system 	PORTAL		# portal filesystem (still experimental)
file-system 	PROCFS		# /proc

# File system options
options 	QUOTA		# UFS quotas
options 	SOFTDEP         # FFS soft updates support.
options 	NFSSERVER	# Network File System server

# Networking options
options 	INET		# IP + ICMP + TCP + UDP
#options 	INET6		# IPV6
#options 	IPSEC		# IP security
#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
#options 	IPSEC_DEBUG	# debug for IP security
options 	IPFILTER_LOG	# ipmon(8) log support

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
options 	MIIVERBOSE	# verbose PHY autoconfig messages
options 	PCIVERBOSE	# verbose PCI device autoconfig messages
#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
options 	SCSIVERBOSE	# human readable SCSI error messages
options 	USBVERBOSE	# verbose USB device autoconfig messages
options 	PNPBIOSVERBOSE	# verbose PnP BIOS messages
#options	PNPBIOSDEBUG	# more fullsome Pnp BIOS debugging messages

# wscons options
# builtin terminal emulations
options 	WSEMUL_VT100		# VT100 / VT220 emulation
# different kernel output - see dev/wscons/wsdisplayvar.h
# compatibility to other console drivers
options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
options 	WSDISPLAY_COMPAT_USL		# VT handling
options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
# allocate a number of virtual screens at autoconfiguration time
# use a large software cursor that doesn't blink

# Kernel root file system and dump configuration.
config		netbsd	root on ? type ?

# Device configuration

mainbus0 at root

#apm0	at mainbus0			# Advanced power management

# Tuning for power management, see apm(4) for more details.
#options 	APM_NO_IDLE		# Don't call BIOS CPU idle function
#options 	APM_V10_ONLY		# Use only the APM 1.0 calls
#options 	APM_NO_POWEROFF		# Don't power off on halt(8)
#options 	APM_POWER_PRINT		# Print stats on the console
#options 	APM_DISABLE_INTERRUPTS=0 # Don't disable interrupts

options		APMDEBUG
options		APMDEBUG_VALUE=0xff

# Basic Bus Support

# Plug-and-Play BIOS and attached devices

#pnpbios*	at mainbus?

# mainboard audio chips
#ess*		at pnpbios? index ?	# ESS AudioDrive
#sb*		at pnpbios? index ?	# NeoMagic 256AV in sb mode
#wss*		at pnpbios? index ?	# NeoMagic 256AV in wss mode
#ym*		at pnpbios? index ?	# OPL3-SA3

# com port
# If enabled, consider changing "com0", "com1", and "com2" under "ISA Serial
# Interfaces" to "com*", otherwise com2 will attach at pnpbios? and there
# will be no com0.  A side effect is pcmcia (and other) com? previously
# starting at com3 may attach as com1 or com2.
#com*		at pnpbios? index ?	# serial ports

# parallel port
# The above "com*" comments apply, cf. "lpt0" under "ISA parallel
# "printer interfaces".
#lpt*		at pnpbios? index ?	# parallel ports

#pckbc*		at pnpbios? index ?	# PC keyboard/mouse controller
#fdc*		at pnpbios? index ?	# floppy controller

# IDE controller on Toshiba Portege 3000 series (crippled PCI device)
#pciide*	at pnpbios? index ?

# PCI bus support
pci*	at mainbus? bus ?
pci*	at pchb? bus ?
pci*	at ppb? bus ?

# Configure PCI using BIOS information
options 	PCIBIOS			# PCI BIOS support
options 	PCIBIOSVERBOSE		# PCI BIOS verbose info
options 	PCIBIOS_ADDR_FIXUP	# fixup PCI I/O addresses
options 	PCIBIOS_BUS_FIXUP	# fixup PCI bus numbering
options 	PCIBIOS_INTR_FIXUP	# fixup PCI interrupt routing
options 	PCIBIOS_IRQS_HINT=0x0a00 # PCI interrupts hint. IRQ 9 or 11
options 	PCIBIOS_INTR_GUESS	# see pcibios(4)
#options 	PCIINTR_DEBUG		# super-verbose PCI interrupt fixup

# PCI bridges
pchb*	at pci? dev ? function ?	# PCI-Host bridges
pcib*	at pci? dev ? function ?	# PCI-ISA bridges
ppb*	at pci? dev ? function ?	# PCI-PCI bridges

# ISA bus support
isa*	at mainbus?
isa*	at pcib?

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

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

# PCI PCMCIA controllers
pcic0	at pci? dev? function ?

# ISA Plug-and-Play bus support
isapnp0	at isa?

# CardBus bridge support
cbb*		at pci? dev ? function ?
cardslot*	at cbb?	

# CardBus bus support
cardbus*	at cardslot?
pcmcia*		at cardslot?

# Coprocessor Support

# Math Coprocessor support
npx0	at isa? port 0xf0 irq 13	# x86 math coprocessor

# Console Devices

# wscons
pckbc0		at isa?			# pc keyboard controller
pckbd*		at pckbc?		# PC keyboard
# "opms" should not be enabled together with "pms" or "pmsi"
pms*		at pckbc?		# PS/2 mouse for wsmouse
pmsi*		at pckbc?		# PS/2 "Intelli"mouse for wsmouse
#opms*		at pckbc?		# backwards compatible PS/2 mouse
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 Devices

# PCMCIA serial interfaces
com*	at pcmcia? function ?		# Modems and serial cards

pcmcom*	at pcmcia? function ?		# PCMCIA multi-port serial cards
com*	at pcmcom? slave ?		# ...and the slave devices

# CardBus serial interfaces
com*	at cardbus? dev ? function ?	# Modems and serial cards

# ISA serial interfaces
com0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
com1	at isa? port 0x2f8 irq 3

# Parallel Printer Interfaces

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

# SCSI Controllers and Devices

# PCMCIA SCSI controllers
aic*	at pcmcia? function ?		# Adaptec APA-1460 SCSI
esp*	at pcmcia? function ?		# Qlogic ESP406/FAS408 SCSI

# CardBus SCSI cards
ahc*	at cardbus? dev ? function ?	# Adaptec ADP-1480

# SCSI bus support
scsibus* at ahc?
scsibus* at aic?
scsibus* at esp?

# SCSI devices
sd*	at scsibus? target ? lun ?	# SCSI disk drives
st*	at scsibus? target ? lun ?	# SCSI tape drives
cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
ch*	at scsibus? target ? lun ?	# SCSI autochangers
ses*	at scsibus? target ? lun ?	# SCSI Enclosure Services devices
ss*	at scsibus? target ? lun ?	# SCSI scanners
uk*	at scsibus? target ? lun ?	# SCSI unknown

# IDE and related devices
# PCI IDE controllers - see pciide(4) for supported hardware.
# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
# how to set up DMA modes for this chip. This may work, or may cause
# a machine hang with some controllers.
pciide* at pci? dev ? function ? flags 0x0000

# PCMCIA IDE controllers
wdc*	at pcmcia? function ?

# ISA ST506, ESDI, and IDE controllers
# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
# fall back to 16bits I/O if 32bits I/O are not functional).
# Some controllers pass the initial 32bit test, but will fail later.
wdc0	at isa? port 0x1f0 irq 14 flags 0x00
wdc1	at isa? port 0x170 irq 15 flags 0x00

# IDE drives
# Flags are used only with controllers that support DMA operations
# and mode settings (e.g. some pciide controllers)
# The lowest order four bits (rightmost digit) of the flags define the PIO
# mode to use, the next set of four bits the DMA mode and the third set the
# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
# to use, and the last bit must be 1 for this setting to be used.
# For DMA and UDMA, 0xf (1111) means 'disable'.
# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
# (0xc=1100, 0xa=1010, 0xf=1111)
# 0x0000 means "use whatever the drive claims to support".
wd*	at wdc? channel ? drive ? flags 0x0000
wd*	at pciide? channel ? drive ? flags 0x0000

# ATAPI bus support
atapibus* at wdc? channel ?
atapibus* at pciide? channel ?

# ATAPI devices
# flags have the same meaning as for IDE drives.
cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown

# Miscellaneous mass storage devices

# ISA floppy
fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
fd*	at fdc? drive ?			# the drives themselves
# some machines need you to do this instead of fd*
#fd0	at fdc0 drive 0

# Network Interfaces

# PCMCIA network interfaces
awi*	at pcmcia? function ?		# BayStack 650/660 (802.11FH/DS)
cnw*	at pcmcia? function ?		# Xircom/Netwave AirSurfer
ep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
mbe*	at pcmcia? function ?		# MB8696x based Ethernet
ne*	at pcmcia? function ?		# NE2000-compatible Ethernet
ray*	at pcmcia? function ?		# Raytheon Raylink (802.11)
sm*	at pcmcia? function ?		# Megahertz Ethernet
wi*	at pcmcia? function ?		# Lucent WaveLan IEEE (802.11)
xi*	at pcmcia? function ?		# Xircom CreditCard Ethernet

mhzc*	at pcmcia? function ?		# Megahertz Ethernet/Modem combo cards
com*	at mhzc?
sm*	at mhzc?

# CardBus network cards
ex*	at cardbus? dev ? function ?	# 3Com 3C575TX
fxp*	at cardbus? dev ? function ?	# Intel i8255x
rtk*	at cardbus? dev ? function ?	# Realtek 8129/8139
tlp*	at cardbus? dev ? function ?	# DECchip 21143

# MII/PHY support
dmphy*	at mii? phy ?			# Davicom DM9101 PHYs
exphy*	at mii? phy ?			# 3Com internal PHYs
icsphy*	at mii? phy ?			# Integrated Circuit Systems ICS1890
inphy*	at mii? phy ?			# Intel 82555 PHYs
iophy*	at mii? phy ?			# Intel 82553 PHYs
lxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
nsphy*	at mii? phy ?			# NS83840 PHYs
nsphyter* at mii? phy ?			# NS83843 PHYs
qsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
sqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
tlphy*	at mii? phy ?			# ThunderLAN PHYs
tqphy*	at mii? phy ?			# TDK Semiconductor PHYs
ukphy*	at mii? phy ?			# generic unknown PHYs

# USB Controller and Devices

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

# CardBus USB controllers
ohci*	at cardbus? dev ? function ?	# Open Host Controller

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

# USB Hubs
uhub*	at usb?
uhub*	at uhub? port ? configuration ? interface ?

# USB Mice
ums*	at uhub? port ? configuration ? interface ?
wsmouse*	at ums? mux 0

# USB Keyboards
ukbd*	at uhub? port ? configuration ? interface ?
wskbd*	at ukbd? console ? mux 1

# USB Generic HID devices
uhid*	at uhub? port ? configuration ? interface ?

# USB Printer
ulpt*	at uhub? port ? configuration ? interface ?

# USB Modem
umodem*	at uhub? port ? configuration ?
ucom*	at umodem?

# USB Mass Storage
umass*	at uhub? port ? configuration ? interface ?
atapibus* at umass? channel ?
scsibus* at umass? channel ?

# USB audio
uaudio*	at uhub? port ? configuration ?

# USB Ethernet adapters
aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters

# Prolofic PL2301/PL2302 host-to-host adapter
upl*	at uhub? port ?

# Serial adapters
# FTDI FT8U100AX serial adapter
#uftdi*	at uhub? port ?
#ucom*	at uftdi? portno ?

# Diamond Multimedia Rio 500
urio*	at uhub? port ?

# USB Handspring Visor
uvisor*	at uhub? port ?
ucom*	at uvisor?

# USB Generic driver
ugen*	at uhub? port ?

# Audio Devices

# PCI audio devices
auvia*	at pci? dev ? function ?	# VIA VT82C686A integrated AC'97 Audio
clcs*	at pci? dev ? function ?	# Cirrus Logic CS4280
cmpci*	at pci? dev ? function ?	# C-Media CMI8338/8738
eap*	at pci? dev ? function ?	# Ensoniq AudioPCI
eso*	at pci? dev ? function ?	# ESS Solo-1 PCI AudioDrive
fms*	at pci? dev ? function ?	# Forte Media FM801
sv*	at pci? dev ? function ?	# S3 SonicVibes

# OPL[23] FM synthesizers
opl*	at eso?
opl*	at fms?
opl*	at sv?

# Audio support
audio*	at auvia?
audio*	at clcs?
audio*	at cmpci?
audio*	at eap?
audio*	at eso?
audio*	at fms?
audio*	at sv?
audio*	at uaudio?

# MPU 401 UARTs
mpu*	at eso?
mpu*	at fms?

# MIDI support
midi*	at eap?			# 137[01] MIDI port
midi*	at mpu?			# MPU 401
midi*	at opl?			# OPL FM synth
midi*	at pcppi?		# MIDI interface to the PC speaker

# Pull in optional local configuration
include	"arch/i386/conf/GENERIC.local"

# Pseudo-Devices

# disk/mass storage pseudo-devices
pseudo-device	vnd		4	# disk-like interface to files

# network pseudo-devices
pseudo-device	bpfilter	16	# Berkeley packet filter
pseudo-device	ipfilter		# IP filter (firewall) and NAT
pseudo-device	loop			# network loopback
pseudo-device	gre		2	# generic L3 over IP tunnel
pseudo-device	ipip		2	# IP Encapsulation within IP (RFC 2003)
pseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation

# miscellaneous pseudo-devices
pseudo-device	pty		64	# pseudo-terminals
pseudo-device	rnd			# /dev/random and in-kernel generator

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

options		MSGBUFSIZE=65536
--- cut here ---