Subject: PAS driver failing to allocate ports?
To: None <port-i386@NetBSD.ORG>
From: John F. Woods <jfw@jfwhome.funhouse.com>
List: port-i386
Date: 06/17/1998 21:00:10
I have just booted a recent kernel (sup'ed and built yesterday) and
the ProAudio Spectrum is unable to map i/o space:

pas0 at isa0 port 0x220-0x22f irq 7 drq 1pas: can't map i/o space 0x220/16 in probe

(Originally, it was failing to map 24 locations, but it still fails
when cut back to 16.)  I don't think there's anything else in that
region, but it's hard to tell (and bus_space_map doesn't have any way
to describe conflicts).  (My config file also lists "sb* at isapnp?"
but I don't see any indication that that resulted in a false match
(unless there wouldn't be a message?).)

Needless to say, this worked with the previous kernel (March vintage).
The dmesg output and kernel config file are below.


The entire dmesg output:

NetBSD 1.3F (JFW) #1: Wed Jun 17 08:01:24 EDT 1998
    jfw@jfwhome.funhouse.com:/usr/src/sys/arch/i386/compile/JFW
cpu0: Intel 486DX (486-class)
real mem  = 25100288
avail mem = 21721088
using 332 buffers containing 1359872 bytes of memory
mainbus0 (root)
isa0 at mainbus0
aha0 at isa0 port 0x330-0x333 irq 11 drq 5
aha0: model AHA-1540A/1542A/1542B, firmware 0.5
aha0: async, parity
scsibus0 at aha0: 8 targets
sd0 at scsibus0 targ 0 lun 0: <QUANTUM, LIGHTNING 730S, 241E> SCSI2 0/direct fixed
sd0: 699MB, 3658 cyl, 4 head, 97 sec, 512 bytes/sect x 1431760 sectors
sd1 at scsibus0 targ 1 lun 0: <QUANTUM, VP32210, 81H8> SCSI2 0/direct fixed
sd1: 2103MB, 4243 cyl, 8 head, 126 sec, 512 bytes/sect x 4308352 sectors
sd2 at scsibus0 targ 2 lun 0: <QUANTUM, FIREBALL1280S, 630C> SCSI2 0/direct fixed
sd2: 1222MB, 4135 cyl, 4 head, 151 sec, 512 bytes/sect x 2503872 sectors
sd3 at scsibus0 targ 3 lun 0: <IBM, DORS-32160, S82C> SCSI2 0/direct fixed
sd3: 2063MB, 6703 cyl, 5 head, 126 sec, 512 bytes/sect x 4226725 sectors
sd4 at scsibus0 targ 4 lun 0: <SyQuest, SyJet-S, 0111> SCSI2 0/direct removable
sd4: drive offline
st0 at scsibus0 targ 5 lun 0: <CONNER, CTT8000-S, 1.17> SCSI2 1/sequential removable
st0: drive empty
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
com2 at isa0 port 0x3e8-0x3ef irq 5: ns8250 or ns16450, no fifo
lpt0 at isa0 port 0x278-0x27b: polled
we0 at isa0 port 0x300-0x31f iomem 0xcc000-0xcffff irq 10
we0: WD8013EPC Ethernet (16-bit)
we0: Ethernet address 00:00:c0:9a:8c:70
pas0 at isa0 port 0x220-0x22f irq 7 drq 1pas: can't map i/o space 0x220/16 in probe
pas0: pasfind failed
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
sysbeep0 at pcppi0
npx0 at isa0 port 0xf0-0xff: using exception 16
pc0 at isa0 port 0x60-0x6f irq 1: color
pc0: console
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
fd1 at fdc0 drive 1: 1.2MB, 80 cyl, 2 head, 15 sec
biomask 840 netmask c40 ttymask c42



And the config file:

#	$NetBSD: GENERIC,v 1.156 1998/06/07 18:34:38 sommerfe Exp $
#
#	JFW -- everything that's currently needed
#

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

maxusers	16		# estimated number of users

# CPU support.  At least one is REQUIRED.
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

# Misc. i386-specific options
options 	XSERVER		# X server support in console drivers

# This option allows you to force a serial console at the specified
# I/O address.   see console(4) for details.
#options 	"CONSDEVNAME=\"com\""

# 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=...	# size of base memory
#options 	REALEXTMEM=...	# size of extended memory

# Standard system options

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

options 	RTC_OFFSET=300	# 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 	UVM		# Use UVM instead of Mach VM.
#options 	PMAP_NEW	# new pmap interface; requires UVM

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_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

# Executable format options
options 	EXEC_ELF32	# 32-bit ELF executables (SVR4, Linux)

# 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 	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 	UMAPFS		# NULLFS + uid and gid remapping
#file-system 	UNION		# union file system

# File system options
#options 	QUOTA		# UFS quotas
#options 	FFS_EI		# FFS Endian Independant support
options 	NFSSERVER	# Network File System server
options 	FIFO		# FIFOs; RECOMMENDED
#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
				# immutable) behave as system flags.

# Networking options
options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
#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 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
options 	SCSIVERBOSE	# human readable SCSI error messages

options 	NFS_BOOT_BOOTP,NFS_BOOT_BOOTPARAM

# 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


# Basic Bus Support

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

# 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

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

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

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

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

# 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

pcppi0	at isa?
sysbeep0	at pcppi?

# Serial Devices

# PCI serial interfaces
#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

# 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
#com*	at boca? slave ?
#rtfps0	at isa? port 0x1230 irq 10	# RT 4-port serial cards
#com*	at rtfps? slave ?
#cy0	at isa? iomem 0xd4000 irq 12	# Cyclades serial cards


# Parallel Printer Interfaces

# 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
# nonstandard, but so what?
lpt0	at isa? port 0x278


# SCSI Controllers and Devices

# PCI SCSI controllers
#ahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
#bha*	at pci? dev ? function ?	# BusLogic 9xx SCSI
#isp*	at pci? dev ? function ?	# Qlogic ISP [12]0x0 SCSI/FibreChannel
#ncr*	at pci? dev ? function ?	# NCR 53c8xx 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
#uha*	at eisa? slot ?			# UltraStor 24f SCSI

# PCMCIA SCSI controllers
#aic*	at pcmcia? function ?		# Adaptec APA-1460 SCSI

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

# ISA SCSI controllers
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 ?
#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

# SCSI bus support
scsibus* at aha?
#scsibus* at ahb?
#scsibus* at ahc?
#scsibus* at aic?
#scsibus* at bha?
#scsibus* at isp?
#scsibus* at ncr?
#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


# IDE and Related Devices

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

# PCMCIA IDE controllers
#wdc*	at pcmcia? function ?

# ISA IDE controllers
#wdc0	at isa? port 0x1f0 irq 14	# ST506, ESDI, and IDE controllers
#wdc1	at isa? port 0x170 irq 15

# IDE drives
#wd*	at wdc? drive ?			# the drives themselves

# ATAPI bus support
#atapibus* at wdc?

# ATAPI devices
#cd*	at atapibus? drive ?		# ATAPI CD-ROM drives
#sd*	at atapibus? drive ?		# ATAPI disk drives


# 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
fd0	at fdc0 drive 0
fd1	at fdc0 drive 1

# 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 ed devices 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

# EISA network interfaces

# ISA Plug-and-Play network interfaces

# PCMCIA network interfaces

# ISA network interfaces
we0	at isa? port 0x300 iomem 0xcc000 irq 10	# WD/SMC Ethernet

# MII bus support

# MII PHY network interfaces


# Audio Devices

# PCI audio devices

# ISA Plug-and-Play audio devices
sb*	at isapnp?			# SoundBlaster-compatible audio

# ISA audio devices
pas0	at isa? port 0x220 irq 7 drq 1		# ProAudio Spectrum

# Audio support
audio*	at pas?

# 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
#pms0	at pc? irq 12		# PS/2 auxiliary port mouse
#pms0	at vt? irq 12		# PS/2 auxiliary port mouse


# Joysticks

# ISA Plug-and-Play joysticks
#joy*	at isapnp?			# 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	md		1	# memory disk device (ramdisk)
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	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

# miscellaneous pseudo-devices
pseudo-device	pty		64	# pseudo-terminals
#pseudo-device	tb		1	# tablet line discipline

# rnd is EXPERIMENTAL at this point.
#pseudo-device	rnd			# /dev/random and in-kernel generator
#options 	RND_COM			# use "com" randomness as well (BROKEN)