[alsa-devel] cs46xx thinkpad resume fix - #bug1946

chris at idlelion.net chris at idlelion.net
Wed Jul 18 15:51:45 CEST 2007


Would this also apply to bug #305?

I'm happy to test this on CentOS 5 then Fedora 7 on a 600X, and write up 
the needed steps for ThinkWiki until the patch is included in the 
distributions.

Chris



On Wed, 18 Jul 2007, Pavel Kysilka wrote:

> On Tue Jul 17, 2007 at 12:50:21PM +0200, Takashi Iwai wrote:
>
>  Hi Takashi,
>
> good news below.
>
>> At Mon, 16 Jul 2007 11:24:45 +0200,
>> I wrote:
>>>
>>>
> <cut/>
>>> Oh, thanks for hunting this long-standing bug!
>>>
>>> I think, however, it cannot be applied as it is.
>>> First, snd_cs46xx_start_dsp() calls cs46xx_dsp_load_module(), and the
>>> latter function isn't designed for the PM resume.  We'd need a special
>>> resume function just for clearing area & reloading the dsp images
>>> according to the already loaded DSP modules.
>>>
>>> Second, __devinit prefix for snd_cs46xx_start_dsp() has to be removed
>>> if it's called from the PM handler.
>>
>> Looking at the code more deeply, I suspect whether it really works
>> when CONFIG_SND_CS46XX_NEW_DSP=y.  snd_cs46xx_start_dsp() involves
>> with many calls that add SCBs and co, which will eventually overflow.
>>
>> I made a patch blindly to do the resume work in a saner way, but of
>> course, it's totally untested.  Could you check whether it works?
>
> Patch works perfectly.
>
> Tested option:
> - kernel compiled with and without CONFIG_SND_CS46XX_NEW_DSP=y
> - play pcm stream, suspend, resume and pcm stream is playing
> - play pcm stream, stop playing pcm stream, suspend, resume and play pcm stream
>
> If you need log from resume from notebook, I'll send you this log.
>
>>
>>
>> thanks,
>>
>> Takashi
>>
>
> Many thanks
>    Pavel
>
>
> ________ Information from NOD32 ________
> This message was checked by NOD32 Antivirus System for Linux Mail Servers.
> http://www.eset.com
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
>


More information about the Alsa-devel mailing list