[ltp] Suspend, Resume, Sound, 600X

Richard linux-thinkpad@linux-thinkpad.org
Tue, 23 Jan 2007 15:31:04 +0000 (GMT)


> Hey all,
>
> There are three 600X's in my home. One is running FC6, one is broken and
> one is running Windows XP. Before I can get my wife's 600X onto Linux, it
> will have to suspend and resume correctly.
>
> Currently, the thing that is stopping this is sound. After resume, sound
> doesn't work. I can't rmmod the cs46_xx driver because the Gnome desktop
> holds it open, but if I do log out, rmmod and modprobe that module (from a
> console), sound is again fine.
>
> Is this a bug in the cs46_xx driver? Is a workaround available?

Are you using the alsa or the OSS driver?  I think that you want the 
snd_cs46xx driver, which uses ALSA, and which is *supposed* to be 
suspend-able. Then, make sure all sound-using applications use the ALSA 
interface, not the OSS-compat (/dev/dsp) interface.

Workaround: don't use a sound-server for GNOME. I assume Gnome is similar 
to KDE; the solution there is to completely disable KDE's sound system 
(ArTS), and choose "use external player" for playing system-notifications.
I then use this shell script as the external player:

#!/bin/bash
#Play audio file immediately (avoid arts startup delay). Volume decreased 
to 0.4
sox "$1" -t wav -v 0.4 - | aplay


Other benefit is reduced latency. (compared to ArTS).


HTH,

Richard