Audio on Sunblade 100

Marius Strobl marius at alchemy.franken.de
Fri Aug 21 19:37:42 UTC 2009


On Fri, Aug 21, 2009 at 07:50:42PM +0200, Christian Ramseyer wrote:
> Gheorghe Ardelean wrote:
> > 
> > On Thu, 20 Aug 2009, Christian Ramseyer wrote:
> > 
> > [...]
> >> As it worked for Gheorghe, chances are that I'm doing something
> >> wrong/different:
> > 
> > Now I have tested also mpg321 and it has a not that good sound quality.
> > A lot of noise is coming out but the sound is there all the time. The
> > noise is coming always on the bass (maybe drums?) parts.
> > 
> > Christian, could please also test mpg123 and let us know if you get
> > different results?
> > 
> 
> I've got maybe 10 seconds of sound, then silence and these messages:
> 
> [audio.c:596] error: Error in writing audio (Invalid argument?)!
> [mpg123.c:577] error: Deep trouble! Cannot flush to my output anymore!
> 
> There was the "usual" message:
> pcm0:virtual:dsp0.vp0: play interrupt timeout, channel dead
> 
> Also, I have the impressions that the rare events where I get some
> seconds of sound only occur when the box was powered down for some time
> before, subsequent attempts (also after reboot without power cycle)
> never seem to produce sound.

This symptom is similar to when using non-working DMA tag
parameters, except that I get no sound at all then but
possibly a non-correctable DMA error panic. This also
might occur due to other kinds of bugs in the driver,
but without deeper insight in the sound subsystem and
no programming manual for the M5451 this is kind of
unfun...
Given that the driver works for Gheorghe with the same
hardware model I suspect an initialization issue based
on different firmware revsions. Could both of you please
run `pciconf -lv` and report the two lines starting
with isab0 and pcm0 (just these two lines, not the
whole output from that command). Then get a complete
dump of the PCI configuration header by running 
`pciconf -rb <seletor> 0:255` on the selectors
contained in the isab0 and pcm0 strings, for example:
`pciconf -rb isab0 at pci0:1:7:0 0:255`
Please also report the pcm0 parts of a verbose boot
(stop the boot count-down by pressing space and
issue a `set boot_verbose`, followed by `boot`, then
get the pcm0 lines from for example the dmesg-output).

Yongari, given that you've worked on sound drivers
and snd_t4dwave(4) in particular before, can you spot
something obviously wrong with the DMA programming
this driver does, for example in the CSO and ESO parts?

> 
> > So this is some kind of strange to me. I have tested also xmms with
> > the result of only noise comming out.
> 
> I tried xmms with similar results: one short burst of noise/static, then
> silence. Plus some complaining about ioctls:
> 
> ** WARNING **: SNDCTL_DSP_SETFMT ioctl failed: Invalid argument
> ** WARNING **: SNDCTL_DSP_SPEED ioctl failed: Invalid argument
> 

>From the symptoms Gheorghe reported for mpg321 I suspect
it has some LP64 and/or endian bugs, while mpg123 hasn't.
IIRC Yongari once also had a fix for such a bug in XMMS,
which isn't necessarily the cause for the above problem
though.

Marius



More information about the freebsd-sparc64 mailing list