Skip site navigation (1)Skip section navigation (2)
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>

next in thread | raw e-mail | index | archive | help

>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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19991112195153.A020314EA9>