[alsa-devel] No shutdown code in soc-core.c

Liam Girdwood lrg at slimlogic.co.uk
Mon Apr 19 14:15:14 CEST 2010

On Sat, 2010-04-17 at 07:02 +0000, ANISH KUMAR wrote:
> Why this shutdown filed is not there in the struct shown below:
> static struct platform_driver soc_driver 
> {
> .shutdown       = soc_shutdown,                  //soc-core.c 
> }
> This shutdown call this codec_dev->shutdown function 
> In my case i am turning off the amplifier using this call.Which
> solved my problem of "TAK" sound during reset.
> I agree that soc_codec_close() is calling the shutdown function
> but in my case there is a call to set the path after this which is
> turning on the amplifier and suddenly if we reset the phone it is
> causing "TAK" sound.Probably because AMPLIFIER was on.
> Anyway why this function call soc_shutdown() is there in 
> soc-core.c if no one is calling it???
> I know there will be a redundancy if we have shutdown field
> in the struct shown above as soc_codec_close call also calls
> codec shutdown code.
> But in my case it is solving my problem. 

Did you see Mark's reply on dev_pm_ops ?


static const struct dev_pm_ops soc_pm_ops = {
	.suspend = soc_suspend,
	.resume = soc_resume,
	.poweroff = soc_poweroff,



Freelance Developer, SlimLogic Ltd
ASoC and Voltage Regulator Maintainer.

More information about the Alsa-devel mailing list