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>