Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Apr 1999 23:44:12 -0500
From:      Zach Heilig <zach@uffdaonline.net>
To:        multimedia@freebsd.org
Subject:   Sound problems in -current => possibly interrupt related..
Message-ID:  <19990430234412.A660@k6n1.znh.org>

next in thread | raw e-mail | index | archive | help
The sound problems some people are seeing (bet they have a soundblaster)
are possibly because the sound driver is not getting its interrupt:

This is what I see after enabling the DEB() macro and booting verbose
(non-sound related stuff filtered out).  This used mixer to set volumes
and a "fixed" play (from /usr/ports/audio/play) to attempt to play a wave
file (note we only got one interrupt):

ch_bits dev 0 ch 0 val 90 old 0xc0 r 48 p 0 bit 5 off 3
ch_bits dev 0 ch 1 val 90 old 0xc0 r 49 p 0 bit 5 off 3
ch_bits dev 1 ch 0 val 75 old 0x80 r 70 p 0 bit 4 off 4
ch_bits dev 1 ch 1 val 75 old 0x80 r 71 p 0 bit 4 off 4
ch_bits dev 2 ch 0 val 75 old 0x80 r 68 p 0 bit 4 off 4
ch_bits dev 2 ch 1 val 75 old 0x80 r 69 p 0 bit 4 off 4
ch_bits dev 3 ch 0 val 75 old 0xc0 r 52 p 0 bit 5 off 3
ch_bits dev 3 ch 1 val 75 old 0xc0 r 53 p 0 bit 5 off 3
ch_bits dev 4 ch 0 val 75 old 0xc0 r 50 p 0 bit 5 off 3
ch_bits dev 4 ch 1 val 75 old 0xc0 r 51 p 0 bit 5 off 3
ch_bits dev 5 ch 0 val 75 old 0xa0 r 59 p 0 bit 2 off 6
ch_bits dev 6 ch 0 val 75 old 0x00 r 56 p 0 bit 5 off 3
ch_bits dev 6 ch 1 val 75 old 0x00 r 57 p 0 bit 5 off 3
ch_bits dev 7 ch 0 val 16 old 0x00 r 58 p 0 bit 5 off 3
ch_bits dev 8 ch 0 val 75 old 0x00 r 54 p 0 bit 5 off 3
ch_bits dev 8 ch 1 val 75 old 0x00 r 55 p 0 bit 5 off 3
ch_bits dev 12 ch 0 val 75 old 0x00 r 63 p 0 bit 2 off 6
ch_bits dev 12 ch 1 val 75 old 0x00 r 64 p 0 bit 2 off 6
ch_bits dev 13 ch 0 val 75 old 0x00 r 65 p 0 bit 2 off 6
ch_bits dev 13 ch 1 val 75 old 0x00 r 66 p 0 bit 2 off 6
pcm1 (SB16pnp <SB16 PnP> sn 0x12b9118f) at 0x220-0x22f irq 9 drq 0 flags 0x17 on isa
mss_probe: no address supplied, try default 0x530
sb_probe: no address supplied, try defaults (0x220,0x240)
device at 0x220 already attached as unit 1
sb_reset_dsp 0x240 failed
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 0 ch 0 val 90 old 0xe0 r 48 p 0 bit 5 off 3
ch_bits dev 0 ch 1 val 90 old 0xe0 r 49 p 0 bit 5 off 3
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 1 ch 0 val 75 old 0xb0 r 70 p 0 bit 4 off 4
ch_bits dev 1 ch 1 val 75 old 0xb0 r 71 p 0 bit 4 off 4
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 2 ch 0 val 75 old 0xb0 r 68 p 0 bit 4 off 4
ch_bits dev 2 ch 1 val 75 old 0xb0 r 69 p 0 bit 4 off 4
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 3 ch 0 val 0 old 0xb8 r 52 p 0 bit 5 off 3
ch_bits dev 3 ch 1 val 0 old 0xb8 r 53 p 0 bit 5 off 3
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 4 ch 0 val 90 old 0xb8 r 50 p 0 bit 5 off 3
ch_bits dev 4 ch 1 val 90 old 0xb8 r 51 p 0 bit 5 off 3
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 5 ch 0 val 0 old 0xa0 r 59 p 0 bit 2 off 6
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 6 ch 0 val 0 old 0xb8 r 56 p 0 bit 5 off 3
ch_bits dev 6 ch 1 val 0 old 0xb8 r 57 p 0 bit 5 off 3
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 7 ch 0 val 0 old 0x28 r 58 p 0 bit 5 off 3
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 8 ch 0 val 75 old 0xb8 r 54 p 0 bit 5 off 3
ch_bits dev 8 ch 1 val 75 old 0xb8 r 55 p 0 bit 5 off 3
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 12 ch 0 val 75 old 0x80 r 63 p 0 bit 2 off 6
ch_bits dev 12 ch 1 val 75 old 0x80 r 64 p 0 bit 2 off 6
close snd1 subdev 0
open snd1 subdev 0 flags 0x00000003 mode 0x00002000
ch_bits dev 13 ch 0 val 75 old 0x80 r 65 p 0 bit 2 off 6
ch_bits dev 13 ch 1 val 75 old 0x80 r 66 p 0 bit 2 off 6
close snd1 subdev 0
open snd1 subdev 3 flags 0x00000002 mode 0x00002000
<SoundBlaster 16 4.16>1 : open
sb16: play_fmt 8, rec_fmt 0, swap 0
reset dbuf for chan 7
reset dbuf for chan 0
sb16: play_fmt 1048580, rec_fmt 0, swap 0
reset dbuf for chan 7
reset dbuf for chan 0
sb16: play_fmt 1048580, rec_fmt 0, swap 0
reset dbuf for chan 7
reset dbuf for chan 0
sb16: play_fmt 1048580, rec_fmt 0, swap 0
reset dbuf for chan 7
reset dbuf for chan 0
sb16: play_fmt 16, rec_fmt 0, swap 1
reset dbuf for chan 0
reset dbuf for chan 7
sb16: play_fmt 16, rec_fmt 0, swap 0
reset dbuf for chan 0
reset dbuf for chan 7
dsp sync
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 2000 bytes out of 2000
wrintr: bsz change from 0 to 2000, rp 0 rl 2000
wrintr: dl 0 -> 2000
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
__/\\/ pcmintr -- unit 2
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 1024 bytes out of 1232
dsp_write_body: prepare 208 bytes out of 208
write snd1 subdev 3 flag 0x00000001
dsp_write_body: prepare 256 bytes out of 2000
dsp_write_body: prepare 512 bytes out of 1744
dsp_write_body: prepare 512 bytes out of 1232
dsp_write_body: prepare 0 bytes out of 720
dsp_write_body: l=0, (fl 0) sleeping
dsp_write_body: prepare 0 bytes out of 720
dsp_write_body: l=0, (fl 0) sleeping
dsp_write_body: prepare 0 bytes out of 720
dsp_write_body: l=0, (fl 0) sleeping
dsp_write_body: prepare 0 bytes out of 720
dsp_write_body: l=0, (fl 0) sleeping
close snd1 subdev 3
snd_flush d->flags 0x00000141
reset dbuf for chan 0
snd_sync: now rl : fl  65280 : 0
snd_sync: now rl : fl  65280 : 0
snd_sync: now rl : fl  65280 : 0
snd_sync: now rl : fl  65280 : 0
snd_sync: now rl : fl  65280 : 0
snd_sync: now rl : fl  65280 : 0
snd_sync: now rl : fl  65280 : 0
snd_sync: now rl : fl  65280 : 0
snd_sync: now rl : fl  65280 : 0
snd_sync: now rl : fl  65280 : 0
timeout flushing dbuf_out, chan 7 cnt 0xff00 flags 0x00000141
SND_CB_XXX: reason 0x204
dsp_wrabort: stopped, 65272 bytes left
reset dbuf for chan 7
open snd0 subdev 6 flags 0x00000001 mode 0x00002000
read snd0 subdev 6 flag 0x00090000
read snd0 subdev 6 flag 0x00110000
close snd0 subdev 6

-- 
Zach Heilig <zach@uffdaonline.net>


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-multimedia" in the body of the message




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