Subject: Cardbus Problems on new Dell Latitude CPx
To: None <port-i386@netbsd.org>
From: Paul J. Lavoie <pjl@ilx.com>
List: port-i386
Date: 05/02/2000 13:06:51
Just got a new Dell laptop, in an attempt to get a better X environment, and 
am finding that the CardBus slots are not being terribly cooperative with 
NetBSD.
Attempts to access a Dell-branded 3com Fast Ethernet PC Card, or a 3com 
Regular Ethernet III card hang the kernel until the card is ejected, at which 
point normal processing resumes. The cards work find on the previous 
generation of Dell Latitude notebooks.

Hoping that it was just something with the INSTALL kernel, managed to get an 
older install floppy with the kernel I had been successfully using on the 
older machine, without much luck. The kernel msgbuf follows. The error 
messages from detaching are in the output.

Any suggestions?

-pjl

=================

NetBSD 1.4X (LatInstall) #1: Tue May  2 12:12:13 EDT 2000
    pjl@pinky:/usr/src/sys/arch/i386/compile/LatInstall
cpu0: family 6 model 8 step 1
cpu0: Intel Pentium III (E) (686-class)
total memory = 127 MB
avail memory = 112 MB
using 1658 buffers containing 6632 KB of memory
BIOS32 rev. 0 found at 0xffe90
PCI BIOS rev. 2.1 found at 0xfc0ce
pcibios: config mechanism [1][x], special cycles [x][x], last bus 1
PCI IRQ Routing Table rev. 1.0 found at 0xfbd70, size 128 bytes (6 entries)
PCI Interrupt Router at 000:07:0 (Intel 82371MX Mobile PCI I/O IDE Xcelerator 
(MPIIX))
PIR Entry 0:
	Bus: 0  Device: 7
		INTA: link 0x00 bitmap 0x0000
		INTB: link 0x00 bitmap 0x0000
		INTC: link 0x00 bitmap 0x0000
		INTD: link 0x63 bitmap 0xdef8
PIR Entry 1:
	Bus: 1  Device: 0
		INTA: link 0x60 bitmap 0xdef8
		INTB: link 0x61 bitmap 0xdef8
		INTC: link 0x00 bitmap 0x0000
		INTD: link 0x00 bitmap 0x0000
PIR Entry 2:
	Bus: 0  Device: 3
		INTA: link 0x63 bitmap 0xdef8
		INTB: link 0x63 bitmap 0xdef8
		INTC: link 0x00 bitmap 0x0000
		INTD: link 0x00 bitmap 0x0000
PIR Entry 3:
	Bus: 0  Device: 8
		INTA: link 0x61 bitmap 0xdef8
		INTB: link 0x61 bitmap 0xdef8
		INTC: link 0x00 bitmap 0x0000
		INTD: link 0x00 bitmap 0x0000
PIR Entry 4:
	Bus: 0  Device: 13
		INTA: link 0x62 bitmap 0xdef8
		INTB: link 0x00 bitmap 0x0000
		INTC: link 0x00 bitmap 0x0000
		INTD: link 0x00 bitmap 0x0000
PIR Entry 5:
	Bus: 0  Device: 17
		INTA: link 0x62 bitmap 0xdef8
		INTB: link 0x62 bitmap 0xdef8
		INTC: link 0x62 bitmap 0xdef8
		INTD: link 0x62 bitmap 0xdef8
pciintr_link_fixup: PIRQ 0 already connected to IRQ 11
pciintr_link_fixup: PIRQ 3 already connected to IRQ 11
pciintr_link_fixup: PIRQ 1 already connected to IRQ 5
pciintr_link_fixup: PIRQ 2 not connected
pciintr_link_fixup: assigning IRQ 5 to PIRQ 2
--------------------------------------------
  device vendor product pin PIRQ   IRQ stage
--------------------------------------------
000:03:0 0x104c 0xac1c  A   0x03   11  0
000:03:1 0x104c 0xac1c  A   0x03   11  0
000:07:2 0x8086 0x7112  D   0x03   11  0
000:08:0 0x125d 0x1998  A   0x01   05  0
--------------------------------------------
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
mainbus0 (root)
pnpbios0 at mainbus0: nodes 15, max len 248
pnpbios0: not docked
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 0x4c4d (rev. 0x64)
wsdisplay0 at vga1: console (80x25, vt100 emulation)
cbb0 at pci0 dev 3 function 0: Texas Instruments PCI1225 PCI-CardBus Bridge 
(rev. 0x01)
cbb1 at pci0 dev 3 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)
pciide0: bus-master DMA support present
pciide0: primary channel wired to compatibility mode
wd0 at pciide0 channel 0 drive 0: <IBM-DARA-218000>
wd0: drive supports 16-sector pio transfers, lba addressing
wd0: 17301 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 35433216 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
atapibus0 at pciide0 channel 1
cd0 at atapibus0 drive 0: <SAMSUNG CD-ROM SN-124, , S004> type 5 cdrom 
removable
cd0: 32-bit data port
cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2
pciide0: secondary channel interrupting at irq 15
cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2 (using DMA data transfers)
uhci0 at pci0 dev 7 function 2: Intel 82371AB USB Host Controller (PIIX4) 
(rev. 0x01)
uhci0: interrupting at irq 11
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 product 0x1998 (audio multimedia, revision 0x10) at pci0 
dev 8 function 0 not configured
cbb0: interrupting at irq 11
cbb0: cacheline 0x8 lattimer 0x20
cbb0: bhlc 0x822008 lscp 0x20020200
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 2 device 0 cacheline 0x8, lattimer 0x20
pcmcia0 at cardslot0
cbb1: interrupting at irq 11
cbb1: cacheline 0x8 lattimer 0x20
cbb1: bhlc 0x822008 lscp 0x20030300
cardslot1 at cbb1 slot 1 flags 0
cardbus1 at cardslot1: bus 3 device 0 cacheline 0x8, 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
apm0 at mainbus0: Power Management spec V1.2
biomask ef6d netmask ef6d ttymask ffef
md0: internal 1536K image area
IPsec: Initialized Security Association Processing.
cbb0: bad Vcc request. sock_ctrl 0x30, sock_status 0x30000b20
boot device: fd0
root on md0a dumps on md0b
root file system type: ffs
cbb1: bad Vcc request. sock_ctrl 0x30, sock_status 0x30000b20

>From Etherlink III card:
pcic_wait_ready: ready never happened, status = 4c
cbb1: bad Vcc request. sock_ctrl 0x0, sock_status 0x30000382

Kernel Config File:

#	$NetBSD: GENERIC,v 1.328 2000/04/21 17:52:06 explorer Exp $
#
#	GENERIC -- everything that's currently supported
#

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

# Enable the hooks used for initializing the root memory-disk.
options         MEMORY_DISK_HOOKS
options         MEMORY_DISK_IS_ROOT     # force root on memory disk
options         MEMORY_DISK_SERVER=0    # no userspace memory disk support
options         MINIROOTSIZE=3072       # size of memory disk, in blocks
#options        MINIROOTSIZE=2880       # 1.44M, same as a floppy

makeoptions     COPTS="-Os"             # generates smaller code than -O2, -O1

#ident 		"GENERIC-$Revision: 1.328 $"

maxusers	32		# estimated number of users

# Kernel changes
options         SETUIDSCRIPTS
options         NMBCLUSTERS=2048        
#options         NKMEMCLUSTERS="(2 * 6 * 1024 * 1024 / CLBYTES)"

# CPU support.  At least one is REQUIRED.
options 	I386_CPU
options 	I486_CPU
options 	I586_CPU
options 	I686_CPU

# CPU-related options.
options 	MATH_EMULATE	# floating point emulation
#options 	VM86		# virtual 8086 emulation
#options 	USER_LDT	# user-settable LDT; used by WINE
# eliminate delay no-ops in I/O; recommended on all but very old machines
#options 	DUMMY_NOPS

# delay between "rebooting ..." message and hardware reset, in milliseconds
#options 	CPURESET_DELAY=2000

# Misc. i386-specific options
#options 	XSERVER		# X server support in console drivers
#options 	XSERVER_DDB	# PF12 gets you into DDB when X is running

# This option allows you to force a serial console at the specified
# I/O address.   see console(4) for details.
#options 	"CONSDEVNAME=\"com\"",CONADDR=0x2f8,CONSPEED=57600
#	you don't want the option below ON iff you are using the
#	serial console option of the new boot strap code.
#options 	CONS_OVERRIDE	# Always use above! independent of boot info

# The following options override the memory sizes passed in from the boot
# block.  Use them *only* if the boot block is unable to determine the correct
# values.  Note that the BIOS may *correctly* report less than 640k of base
# memory if the extended BIOS data area is located at the top of base memory
# (as is the case on most recent systems).
#options 	REALBASEMEM=639		# size of base memory (in KB)
#options 	REALEXTMEM=15360	# size of extended memory (in KB)

# Standard system options

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

options 	RTC_OFFSET=0	# 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

options 	LKM		# loadable kernel modules

# 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=100	# enable history editing in DDB
#options 	KGDB		# remote debugger
#options 	"KGDB_DEVNAME=\"com\"",KGDBADDR=0x3f8,KGDBRATE=9600
#makeoptions	DEBUG="-g"	# compile full symbol table

# Compatibility options
#options 	COMPAT_NOMID	# compatibility with 386BSD, BSDI, NetBSD 0.8,
#options 	COMPAT_09	# NetBSD 0.9,
#options 	COMPAT_10	# NetBSD 1.0,
#options 	COMPAT_11	# NetBSD 1.1,
#options 	COMPAT_12	# NetBSD 1.2,
#options 	COMPAT_13	# NetBSD 1.3,
options 	COMPAT_14	# NetBSD 1.4,
options 	COMPAT_43	# and 4.3BSD
options 	COMPAT_386BSD_MBRPART # recognize old partition ID

#options 	COMPAT_SVR4	# binary compatibility with SVR4
#options 	COMPAT_IBCS2	# binary compatibility with SCO and ISC
#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 	EXT2FS		# second extended file system (linux)
file-system 	LFS		# log-structured file system
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 	OVERLAY		# overlay file system
file-system 	PORTAL		# portal filesystem (still experimental)
file-system 	PROCFS		# /proc
file-system 	UMAPFS		# NULLFS + uid and gid remapping
file-system 	UNION		# union file system
#file-system	CODA		# Coda File System; also needs vcoda (below)

# File system options
options 	QUOTA		# UFS quotas
#options 	FFS_EI		# FFS Endian Independent support
#options 	SOFTDEP         # FFS soft updates support.
options 	NFSSERVER	# Network File System server
#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
				# immutable) behave as system flags.

# Pull in config fragments for kernel crypto.  This is required for
# options IPSEC etc. to work. If you want to run with IPSEC, uncomment
# one of these, based on whether you use crypto-us or crypto-intl, and
# adjust the prefixes as necessary.

prefix ../crypto-us/sys
cinclude "conf/files.crypto-us"
prefix

#prefix ../crypto-intl/sys
#cinclude "conf/files.crypto-intl"
#prefix

# Networking options
#options 	GATEWAY		# packet forwarding
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 	MROUTING	# IP multicast routing
options 	NS		# XNS
#options 	NSIP		# XNS tunneling over IP
options 	ISO,TPIP	# OSI
options 	EON		# OSI tunneling over IP
options 	CCITT,LLC,HDLC	# X.25
options 	NETATALK	# AppleTalk networking protocols
options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
options 	PPP_DEFLATE	# Deflate compression support for PPP
options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
options 	PFIL_HOOKS	# pfil(9) packet filter hooks
options 	IPFILTER_LOG	# ipmon(8) log support

# Compatibility with 4.2BSD implementation of TCP/IP.  Not recommended.
#options 	TCP_COMPAT_42

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
options 	EISAVERBOSE	# verbose EISA device 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 	NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM

#
# wscons options
#
# builtin terminal emulations
#options 	WSEMUL_SUN		# sun terminal emulation
options 	WSEMUL_VT100		# VT100 / VT220 emulation
# different kernel output - see dev/wscons/wsdisplayvar.h
options 	WS_KERNEL_FG=WSCOL_GREEN
#options 	WS_KERNEL_BG=WSCOL_BLACK
# 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
# see dev/pckbc/wskbdmap_mfii.c for implemented layouts
#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
# allocate a number of virtual screens at autoconfiguration time
#options 	WSDISPLAY_DEFAULTSCREENS=4
# use a large software cursor that doesn't blink
options 	PCDISPLAY_SOFTCURSOR

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

#
# 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_NO_POWER_PRINT	# Don't print stats on the console
options	APM_DISABLE_INTERRUPTS=0 # Don't disable interrupts


# Basic Bus Support

# 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_INTR_FIXUP	# fixup PCI interrupt routing
options 	PCIINTR_DEBUG		# super-verbse PCI interrupt fixup
options 	PCIBIOS_BUS_FIXUP	# fixup PCI bus numbering

# PCI bridges
pchb*	at pci? dev ? function ?	# PCI-Host bridges
pceb*	at pci? dev ? function ?	# PCI-EISA bridges
pcib*	at pci? dev ? function ?	# PCI-ISA bridges
ppb*	at pci? dev ? function ?	# PCI-PCI bridges
# XXX 'puc's aren't really bridges, but there's no better place for them here
puc*	at pci? dev ? function ?	# PCI "universal" comm. cards

# EISA bus support
eisa*	at mainbus?
eisa*	at pceb?

# ISA bus support
isa*	at mainbus?
isa*	at pceb?
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?

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

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

cardbus*	at cardslot?
pcmcia* 	at cardslot?

# Coprocessor Support

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


# Console Devices

# ISA console.  You can only configure one of these!
#pc0	at isa? port 0x60 irq 1		# pccons generic PC console driver
#vt0	at isa? port 0x60 irq 1		# PCVT console driver

# Keyboard layout configuration for pccons
#options 	FRENCH_KBD
#options 	FINNISH_KBD
#options 	GERMAN_KBD
#options 	NORWEGIAN_KBD

# 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

# PCI serial interfaces
com*	at puc? port ?			# 16x50s on "universal" comm boards
cy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards

# ISA Plug-and-Play serial interfaces
com*	at isapnp?			# Modems and serial boards

# 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? function ?		# Modems and serial cards

# ISA serial interfaces
#options 	COM_HAYESP		# adds Hayes ESP serial board support
com0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
com1	at isa? port 0x2f8 irq 3
com2	at isa? port 0x3e8 irq 5
#com3	at isa? port 0x2e8 irq 9
#ast0	at isa? port 0x1a0 irq 5	# AST 4-port serial cards
#com*	at ast? slave ?
#boca0	at isa? port 0x100 irq 5	# BOCA 8-port serial cards
#boca0	at isa? port 0x100 irq 5	# BOCA 16-port serial cards (BB2016)
#boca1	at isa? port 0x140 irq 5	# this line is also needed for BB2016
#com*	at boca? slave ?
#tcom0	at isa? port 0x100 irq 7	# TC-800 8-port serial cards
#com*	at tcom? slave ?
#rtfps0	at isa? port 0x1230 irq 10	# RT 4-port serial cards
#com*	at rtfps? slave ?
cy0	at isa? iomem 0xd4000 irq 10	# Cyclades serial cards
addcom0 at isa? port 0x108 irq 5	# Addonics FlexPort 8S
com*	at addcom? slave ?

# Parallel Printer Interfaces

# PCI parallel printer interfaces
lpt*	at puc? port ?			# || ports on "universal" comm boards

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

# LM7[89] and compatible hardware monitors
#lm0	at isa?	port 0x290		# other common ports: 0x280, 0x310

# SCSI Controllers and Devices

# PCI SCSI controllers
adv*	at pci? dev ? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI
adw*	at pci? dev ? function ?	# AdvanSys 9xxUW SCSI
ahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
bha*	at pci? dev ? function ?	# BusLogic 9xx SCSI
dpt*	at pci? dev ? function ?	# DPT SmartCache/SmartRAID
isp*	at pci? dev ? function ?	# Qlogic ISP [12]0x0 SCSI/FibreChannel
ncr*	at pci? dev ? function ?	# NCR 53c8xx SCSI
pcscp*	at pci? dev ? function ?	# AMD 53c974 PCscsi-PCI SCSI

# EISA SCSI controllers
ahb*	at eisa? slot ?			# Adaptec 174[02] SCSI
ahc*	at eisa? slot ?			# Adaptec 274x, aic7770 SCSI
bha*	at eisa? slot ?			# BusLogic 7xx SCSI
dpt*	at eisa? slot ?			# DPT EATA SCSI
uha*	at eisa? slot ?			# UltraStor 24f SCSI

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

# ISA Plug-and-Play SCSI controllers
aha*	at isapnp? 			# Adaptec AHA-154[02
aic*	at isapnp?			# Adaptec AHA-1520B

# ISA SCSI controllers
adv0	at isa? port ? irq ? drq ?	# AdvanSys APB-514[02]
aha0	at isa? port 0x330 irq ? drq ?	# Adaptec 154[02] SCSI
aha1	at isa? port 0x334 irq ? drq ?
ahc0	at isa? port ? irq ?		# Adaptec 284x SCSI
aic0	at isa? port 0x340 irq 11	# Adaptec 152[02] SCSI
bha0	at isa? port 0x330 irq ? drq ?	# BusLogic [457]4X SCSI
bha1	at isa? port 0x334 irq ? drq ?
# The "nca" and "dpt" probes might give false hits or hang your machine.
#dpt0	at isa? port 0x170 irq ? drq ?	# DPT SmartCache/SmartRAID
#nca0	at isa? port 0x360 irq 15	# Port-mapped NCR 53C80 contoller
#nca1	at isa? iomem 0xd8000 irq 5	# Memory-mapped controller (T128, etc.)
sea0	at isa? iomem 0xc8000 irq 5	# Seagate/Future Domain SCSI
uha0	at isa? port 0x330 irq ? drq ?	# UltraStor [13]4f SCSI
uha1	at isa? port 0x340 irq ? drq ?
wds0	at isa? port 0x350 irq 15 drq 6	# WD7000 and TMC-7000 controllers
wds1	at isa? port 0x358 irq 11 drq 5

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

# SCSI bus support
scsibus* at adv?
scsibus* at adw?
scsibus* at aha?
scsibus* at ahb?
scsibus* at ahc?
scsibus* at aic?
scsibus* at bha?
scsibus* at dpt?
scsibus* at esp?
scsibus* at isp?
#scsibus* at nca?
scsibus* at ncr?
scsibus* at pcscp?
scsibus* at sea?
scsibus* at uha?
scsibus* at wds?

# 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
ss*	at scsibus? target ? lun ?	# SCSI scanners
uk*	at scsibus? target ? lun ?	# SCSI unknown

# RAID controllers and devices
cac*	at pci? dev ? function ?	# Compaq array controller
ca*	at cac? unit ?			# Compaq array disk device

# 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

# ISA Plug-and-Play IDE controllers
wdc*	at isapnp? 

# 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
#fdc1	at isa? port 0x370 irq ? drq ?
fd*	at fdc? drive ?			# the drives themselves
# some machines need you to do this instead of fd*
#fd0	at fdc0 drive 0

# ISA CD-ROM devices
#mcd0	at isa? port 0x300 irq 10	# Mitsumi CD-ROM drives

# ISA tape devices
# note: the wt driver conflicts unpleasantly with SMC boards at the
# same I/O address. The probe reprograms their EEPROMs. Don't
# uncomment it unless you are actually using it.
#wt0	at isa? port 0x308 irq 5 drq 1	# Archive and Wangtek QIC tape drives


# Network Interfaces

# PCI network interfaces
de*	at pci? dev ? function ?	# DEC 21x4x-based Ethernet
en*	at pci? dev ? function ?	# ENI/Adaptec ATM
ep*	at pci? dev ? function ?	# 3Com 3c59x
ex*	at pci? dev ? function ?	# 3Com 90x[B]
epic*	at pci? dev ? function ?	# SMC EPIC/100 Ethernet
esh*	at pci? dev ? function ?	# Essential HIPPI card
fpa*	at pci? dev ? function ?	# DEC DEFPA FDDI
fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
le*	at pci? dev ? function ?	# PCnet-PCI Ethernet
ne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
ntwoc*	at pci? dev ? function ?	# Riscom/N2 PCI Sync Serial
sip*	at pci? dev ? function ?	# SiS 900 Ethernet
tl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
tlp*	at pci? dev ? function ?	# DECchip 21x4x (and clones) Ethernet
options 	TLP_MATCH_21040
options 	TLP_MATCH_21041
options 	TLP_MATCH_21140
options 	TLP_MATCH_21142
vr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet
lmc*	at pci? dev ? function ?	# Lan Media Corp SSI/HSSI/DS3
rtk*	at pci? dev ? function ?	# Realtek 8129/8139

# EISA network interfaces
ep*	at eisa? slot ?			# 3Com 3c579 Ethernet
fea*	at eisa? slot ?			# DEC DEFEA FDDI
tlp*	at eisa? slot ?			# DEC DE-425 Ethernet

# ISA Plug-and-Play network interfaces
ep*	at isapnp?			# 3Com 3c509 Ethernet
ne*	at isapnp?			# NE2000-compatible Ethernet
tr*	at isapnp?			# IBM/3COM TROPIC Token-Ring

# 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)
xe*	at pcmcia? function ?		# Xircom PCMCIA cards

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

# ISA network interfaces
ate0	at isa? port 0x2a0 irq ?		# AT1700
cs0	at isa? port 0x300 iomem ? irq ? drq ?	# CS8900 Ethernet
ec0	at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
eg0	at isa? port 0x280 irq 9		# 3C505 ethernet cards
el0	at isa? port 0x300 irq 9		# 3C501 ethernet cards
ep0	at isa? port ? irq ?			# 3C509 ethernet cards
ef0	at isa? port 0x360 iomem 0xd0000 irq 7	# 3C507
ai0	at isa? port 0x360 iomem 0xd0000 irq 7	# StarLAN
fmv0	at isa? port 0x2a0 irq ?		# FMV-180 series
ix0	at isa? port 0x300 irq 10		# EtherExpress/16
iy0	at isa? port 0x360 irq ?		# EtherExpress PRO 10 ISA
lc0	at isa? port 0x320 iomem ? irq ?	# DEC EtherWORKS III (LEMAC)
#depca0	at isa? port 0x300 iomem 0xc8000 iosiz 0x8000 irq 5	# DEPCA
#le*	at depca?
nele0	at isa? port 0x320 irq 9 drq 7		# NE2100
#ntwoc0	at isa? port 0x300 irq 5 iomem 0xc8000 flags 1	# Riscom/N2 sync serial
le*	at nele?
bicc0	at isa? port 0x320 irq 10 drq 7		# BICC IsoLan
le*	at bicc?
ne0	at isa? port 0x280 irq 9		# NE[12]000 ethernet cards
ne1	at isa? port 0x300 irq 10
sm0	at isa? port 0x300 irq 10		# SMC91C9x Ethernet
tr0	at isa? port 0xa20 iomem 0xd8000 irq ?  # IBM TROPIC based Token-Ring
tr1	at isa? port 0xa24 iomem 0xd0000 irq ?  # IBM TROPIC based Token-Ring
tr*	at isa? port ? irq ?			# 3COM TROPIC based Token-Ring
we0	at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC Ethernet
we1	at isa? port 0x300 iomem 0xcc000 irq 10

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

# MII/PHY support
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
uhci*	at pci?	dev ? function ?	# Universal Host Controller (Intel)
ohci*	at pci?	dev ? function ?	# Open Host Controller

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

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

# 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 ?


# Plug-and-Play BIOS and attached devices

pnpbios0 at mainbus0

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

# com port
#com*	at pnpbios0 index ?

# parallel port
#lpt*	at pnpbios0 index ?

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


# Audio Devices

# PCI audio devices
auvia*	at pci? dev ? function ?	# VIA VT82C686A integrated AC'97 Audio
clcs*	at pci? dev ? function ?	# Cirrus Logic CS4280
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
#sbl*	at pci? dev ? function ?	# SoundBlaster Live!
sv*	at pci? dev ? function ?	# S3 SonicVibes

# ISA Plug-and-Play audio devices
ess*	at isapnp?			# ESS Tech ES1887, ES1888, ES888 audio
guspnp*	at isapnp?			# Gravis Ultra Sound PnP audio
sb*	at isapnp?			# SoundBlaster-compatible audio
wss*	at isapnp?			# Windows Sound System
ym*	at isapnp?			# Yamaha OPL3-SA3 audio

# ISA audio devices
# the "aria" probe might give false hits
#aria0	at isa? port 0x290 irq 10 		# Aria
#ess0	at isa? port 0x220 irq 5 drq 1 drq2 5	# ESS 18XX
gus0	at isa? port 0x220 irq 7 drq 1 drq2 6	# Gravis Ultra Sound
pas0	at isa? port 0x220 irq 7 drq 1		# ProAudio Spectrum
pss0	at isa? port 0x220 irq 7 drq 6  	# Personal Sound System
sp0	at pss0 port 0x530 irq 10 drq 0		# 	sound port driver
sb0	at isa? port 0x220 irq 5 drq 1 drq2 5	# SoundBlaster
wss0	at isa? port 0x530 irq 10 drq 0	drq2 1	# Windows Sound System

# OPL[23] FM synthesizers
#opl0	at isa? port 0x388	# use only if not attached to sound card
opl*	at eso?
opl*	at ess?
opl*	at fms?
opl*	at sb?
opl*	at sv?
opl*	at wss?
opl*	at ym?

# Audio support
#audio*	at aria?
audio*	at auvia?
audio*	at clcs?
audio*	at eap?
audio*	at eso?
audio*	at ess?
audio*	at fms?
audio*	at gus?
audio*	at guspnp?
audio*	at pas?
audio*	at sb?
#audio*	at sbl?
audio*	at sp?
audio*	at sv?
audio*	at uaudio?
audio*	at wss?
audio*	at ym?

# MPU 401 UARTs
#mpu*	at isa? port 0x330 irq 9        # MPU401 or compatible card
mpu*	at eso?
mpu*	at fms?
mpu*	at sb?
mpu*	at ym?

# 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
midi*	at sb?			# SB1 MIDI port

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


# Mice

# ISA busmice
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
# backwards compatible versions
#olms0	at isa? port 0x23c irq 5	# Logitech bus mouse
#olms1	at isa? port 0x238 irq 5
#omms0	at isa? port 0x23c irq 5	# Microsoft InPort mouse
#omms1	at isa? port 0x238 irq 5
#opms0	at pc? irq 12		# PS/2 auxiliary port mouse
#opms0	at vt? irq 12		# PS/2 auxiliary port mouse


# Joysticks

# ISA Plug-and-Play joysticks
joy*	at isapnp?			# Game ports (usually on audio cards)

# PCI joysticks
joy*	at pci?				# Game ports (usually on audio cards)

# ISA joysticks. Probe is a little strange; add only if you have one.
#joy0	at isa? port 0x201


# Miscellaneous Devices

# Planetconnect Satellite receiver driver.
#satlink0 at isa? port 0x300 drq 1


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


# Pseudo-Devices

# disk/mass storage pseudo-devices
pseudo-device	ccd		4	# concatenated/striped disk devices
#pseudo-device	raid		4	# RAIDframe disk driver
options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
pseudo-device	md		1	# memory disk device (ramdisk)
pseudo-device	vnd		4	# disk-like interface to files

# network pseudo-devices
pseudo-device	bpfilter	8	# Berkeley packet filter
pseudo-device	ipfilter		# IP filter (firewall) and NAT
pseudo-device	loop			# network loopback
pseudo-device	ppp		2	# Point-to-Point Protocol
pseudo-device	sl		2	# Serial Line IP
pseudo-device	strip		2	# Starmode Radio IP (Metricom)
pseudo-device	tun		2	# network tunneling over tty
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	tb		1	# tablet line discipline
pseudo-device	sequencer	1	# MIDI sequencer
# rnd works; RND_COM does not on port i386 yet.
pseudo-device	rnd			# /dev/random and in-kernel generator
#options 	RND_COM			# use "com" randomness as well (BROKEN)

# a pseudo device needed for Coda	# also needs CODA (above)
#pseudo-device	vcoda		4	# coda minicache <-> venus comm.

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


-------------------------------------------------------------------------------
Paul J. Lavoie		pjl@ilx.com		(212) 510-3029
ILX Systems, Inc.	111 Fulton St		New York, NY  10038