Date: Fri, 12 Nov 1999 11:51:53 -0800 (PST) From: ab@astralblue.com To: freebsd-gnats-submit@freebsd.org Subject: kern/14849: newpcm doesn't work with Vibra16X Message-ID: <19991112195153.A020314EA9@hub.freebsd.org>
index | next in thread | raw e-mail
>Number: 14849
>Category: kern
>Synopsis: newpcm doesn't work with Vibra16X
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Nov 12 12:00:00 PST 1999
>Closed-Date:
>Last-Modified:
>Originator: Eugene M. Kim
>Release: 4-current
>Organization:
>Environment:
FreeBSD seerajeane.pl.cp 4.0-CURRENT FreeBSD 4.0-CURRENT #0: Fri Nov 12 03:00:21 PST 1999 root@seerajeane.pl.cp:/usr/src/sys/compile/PL-SEERAJEANE i386
Kernel configuration:
--------------------------------- snip ---------------------------------
#
# PL-SEERAJEANE - kernel configuration for Seerajeane's office computer
#
#
# CORE PARAMETERS
#
machine i386 # configuration architecture
ident PL-SEERAJEANE # kernel identification
config kernel # kernel name
maxusers 64 # hint for system table sizes
#
# GENERAL
#
# CPU options
cpu I686_CPU # Intel Pentium Pro/II/III/Celeron CPU
# SMP options
options SMP # symmetric multiprocessor support
options APIC_IO # symmetric (APIC) I/O
# Config options
options USERCONFIG # boot-up hardware configuration menu
#options VISUAL_USERCONFIG # visual menu
#options INCLUDE_CONFIG_FILE # in-line kernel configuration file
# Compatibility options
options COMPAT_43 # 4.3BSD/FreeBSD 1.x syscall compatibility
options SYSVSHM # System V shared memory
options SYSVSEM # System V semaphore
options SYSVMSG # System V message queue
# Compatibility options - POSIX 1003.1B realtime extensions
options P1003_1B # core
options _KPOSIX_PRIORITY_SCHEDULING # priority scheduling
options _KPOSIX_VERSION=199309L # POSIX kernel version
# Miscellaneous options
options MD5 # md5 hashing routine
options MSGBUF_SIZE=40960 # kernel message buffer size
#
# NETWORKING
#
# Internet family
options INET # Internet core code
options IPFIREWALL # IP firewall (necessary for dummynet)
options IPFIREWALL_VERBOSE
options IPFIREWALL_FORWARD
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPDIVERT
options DUMMYNET # Dummynet network bandwidth limiter
# Network interface types/options
pseudo-device loop # loopback (MANDATORY)
pseudo-device ether # Ethernet
pseudo-device bpf # Berkeley packet filter (for Samba)
#
# FILESYSTEMS
#
# Real filesystems
options FFS # 4.2BSD fast filesystem
options FFS_ROOT # FFS usable as root filesystem
options SOFTUPDATES # FFS Softupdates technology
# General filesystem options
options QUOTA # disk quota check
# Swap options
options NSWAPDEV=1 # number of swap devices
#
# MISCELLANEOUS DEVICES
#
# Pseudo tty
pseudo-device pty
# Advanced power management (APM)
device apm0 at nexus?
#
# ISA BUS/DEVICES
#
# Core options
controller isa0 # ISA system bus
controller pnp0 # ISA plug-and-play support
#options AUTO_EOI_1 # automatic EOI on master PIC
#options AUTO_EOI_2 # automatic EOI on slave PIC
# AT keyboard controller (required for atkbd0, psm0, vga0 and sc0)
controller atkbdc0 at isa? port IO_KBD
# AT keyboard
device atkbd0 at atkbdc? irq 1
# PS/2 mouse
device psm0 at atkbdc? irq 12
# Standard VGA
device vga0 at isa? port ? conflicts
# System console
device sc0 at isa?
options MAXCONS=12
options SC_HISTORY_SIZE=1000
options VESA
# Splash screen at start up (screen savers require this too)
pseudo-device splash
# Numeric processing extension
device npx0 at nexus? port IO_NPX irq 13
# Floppy disk controller
controller fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
# IDE/ESDI/ATAPI controller
controller ata0
device atadisk0
# Serial ports
device sio0 at isa? port IO_COM1 irq 4
device sio1 at isa? port IO_COM2 irq 3
# Newpcm
device pcm0
# Joystick
device joy0 at isa? port IO_GAME
#
# PCI BUS/DEVICES
#
# Core options
controller pci0
# Adaptec aic7895-based SCSI host adapter
controller ahc0
#
# SCSI BUS/DEVICES
#
controller scbus0 # SCSI bus
device da0 # direct access (disk)
device cd0 # CD-ROM
device pass0 # passthrough device
#
# PARALLEL PORT BUS/DEVICES
#
controller ppbus0 # parallel port bus
controller lpt0 at ppbus? # parallel printer
device ppc0 at isa? port ? irq 7 # parallel port device
--------------------------------- snip ---------------------------------
dmesg output:
--------------------------------- snip ---------------------------------
FreeBSD seerajeane.pl.cp 4.0-CURRENT FreeBSD 4.0-CURRENT #0: Fri Nov 12 03:00:21 PST 1999 root@seerajeane.pl.cp:/usr/src/sys/compile/PL-SEERAJEANE i386
seerajeane 11:02:04 ab $ 2 dmesg
Copyright (c) 1992-1999 The FreeBSD Project.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
FreeBSD 4.0-CURRENT #0: Fri Nov 12 03:00:21 PST 1999
root@seerajeane.pl.cp:/usr/src/sys/compile/PL-SEERAJEANE
Timecounter "i8254" frequency 1193182 Hz
CPU: Pentium II/Celeron (400.91-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0x660 Stepping = 0
Features=0x183fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR>
real memory = 268435456 (262144K bytes)
avail memory = 257470464 (251436K bytes)
Programming 24 pins in IOAPIC #0
FreeBSD/SMP: Multiprocessor motherboard
cpu0 (BSP): apic id: 0, version: 0x00040011, at 0xfee00000
cpu1 (AP): apic id: 1, version: 0x00040011, at 0xfee00000
io0 (APIC): apic id: 2, version: 0x00170011, at 0xfec00000
Preloaded elf kernel "kernel.PL-SEERAJEANE" at 0xc02a8000.
VESA: v2.0, 8192k memory, flags:0x1, mode table:0xc025da42 (1000022)
VESA: Matrox Graphics Inc.
Pentium Pro MTRR support enabled
devclass_alloc_unit: pcib0 already exists, using next available unit number
npx0: <math processor> on motherboard
npx0: INT 16 interface
apm0: <APM BIOS> on motherboard
apm: found APM BIOS v1.2, connected at v1.2
pcib0: <Intel 82443GX host to PCI bridge> on motherboard
pci0: <PCI bus> on pcib0
pcib2: <Intel 82443GX (440 GX) PCI-PCI (AGP) bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib2
vga-pci0: <Matrox model 0521 graphics accelerator> irq 16 at device 0.0 on pci1
isab0: <Intel 82371AB PCI to ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
ata-pci0: <Intel PIIX4 IDE controller> at device 7.1 on pci0
ata-pci0: Busmastering DMA supported
ata0 at 0x01f0 irq 14 on ata-pci0
ata1 at 0x0170 irq 15 on ata-pci0
chip1: <UHCI USB controller> at device 7.2 on pci0
Timecounter "PIIX" frequency 3579545 Hz
chip2: <Intel 82371AB Power management controller> at device 7.3 on pci0
pcib3: <PCI to PCI bridge (vendor=1011 device=0024)> at device 16.0 on pci0
pci2: <PCI bus> on pcib3
pci0: unknown card (vendor=0x8086, dev=0x1229) at 17.0 irq 19
ahc0: <Adaptec aic7895 Ultra SCSI adapter> irq 16 at device 18.0 on pci0
ahc0: aic7895 Wide Channel A, SCSI Id=7, 16/255 SCBs
ahc1: <Adaptec aic7895 Ultra SCSI adapter> irq 16 at device 18.1 on pci0
ahc1: aic7895 Wide Channel B, SCSI Id=7, 16/255 SCBs
devclass_alloc_unit: pci1 already exists, using next available unit number
pcib1: <Intel 82443GX host to AGP bridge> on motherboard
pci3: <PCI bus> on pcib1
atkbdc0: <keyboard controller (i8042)> at port 0x60-0x6f on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
psm0: failed to get data.
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: <Generic ISA VGA> at port 0x3b0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> on isa0
sc0: VGA <12 virtual consoles, flags=0x200>
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
sio0 at port 0x3f8-0x3ff irq 4 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
sb_reset_dsp failed
sb_reset_dsp failed
joy0 at port 0x201 on isa0
joy0: joystick
ppc0 at port 0x378-0x37f irq 7 on isa0
ppc0: Generic chipset (EPP/NIBBLE) in COMPATIBLE mode
ppb0: IEEE1284 device found /NIBBLE/ECP/ECP_RLE
Probing for PnP devices on ppbus0:
ppbus0: <Hewlett-Packard HP LaserJet 4050 Series > PJL,MLC,PCL,PCLXL,POSTSCRIPT
lpt0: <generic printer> on ppbus 0
lpt0: Interrupt-driven port
unknown0: <Audio> at port 0x220-0x22f,0x330-0x331,0x388-0x38b irq 5 drq 1,3 on isa0
unknown1: <Game> at port 0x200 on isa0
APIC_IO: Testing 8254 interrupt delivery
APIC_IO: routing 8254 via pin 2
IP packet filtering initialized, divert enabled, rule-based forwarding enabled, default to accept, unlimited logging
DUMMYNET initialized (990811)
SMP: AP CPU #1 Launched!
ad0: <SAMSUNG WN321620A (2.16 GB)/FG101> ATA-? disk at ata0 as master
ad0: 2060MB (4219488 sectors), 4186 cyls, 16 heads, 63 S/T, 512 B/S
ad0: 16 secs/int, 0 depth queue, DMA
Creating DISK ad0
Creating DISK wd0
ad1: <SAMSUNG PLS-30854A/BR1O8> ATA-? disk at ata0 as slave
ad1: 810MB (1660176 sectors), 1647 cyls, 16 heads, 63 S/T, 512 B/S
ad1: 16 secs/int, 0 depth queue, PIO
Creating DISK ad1
Creating DISK wd1
ad2: <SAMSUNG PLS-30854A/BR105> ATA-? disk at ata1 as master
ad2: 810MB (1660176 sectors), 1647 cyls, 16 heads, 63 S/T, 512 B/S
ad2: 16 secs/int, 0 depth queue, PIO
Creating DISK ad2
Creating DISK wd2
Waiting 2 seconds for SCSI devices to settle
Creating DISK da0
Creating DISK cd0
Mounting root from ufs:/dev/wd0s1a
da0 at ahc0 bus 0 target 0 lun 0
da0: <SyQuest SyJet-S 0095> Removable Direct Access SCSI-2 device
da0: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled
da0: Attempt to query device size failed: NOT READY, Medium not present
WARNING: / was not properly dismounted
cd0 at ahc0 bus 0 target 1 lun 0
cd0: <YAMAHA CRW4260 1.0e> Removable CD-ROM SCSI-2 device
cd0: 3.300MB/s transfers
cd0: cd present [246183 x 2048 byte records]
fxp0: <Intel EtherExpress Pro 10/100B Ethernet> irq 19 at device 17.0 on pci0
fxp0: Ethernet address 00:e0:81:10:36:bf
--------------------------------- snip ---------------------------------
>Description:
A process that tries to play PCM data via /dev/dsp stops in "pcmwr"
state almost as soon as the playing starts. The process is still
interruptible (i.e. it responds to ^C, etc).
It seems that the interrupt service routine (sb_intr) is not being
called when the DMA transfer completes. systat -vm 1 shows no interrupt
count for pcm0 device, and a simple hack inserted to sb_intr() (like
printf("sb_intr() was called\n");) is never executed.
All the other soundcard functions which don't involve interrupts, such
as mixer adjustment, work normally.
IMHO the problem seems to be that the soundcard interrupt is
misregistered (or not registered at all) with the resource management
service, otherwise systat -vm should show the correct IRQ for pcm0 at'
least.
>How-To-Repeat:
Enable newpcm in the kernel, then play an MP3 file with mpg123.
>Fix:
No fix or workaround known.
>Release-Note:
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19991112195153.A020314EA9>
