Re: Question about pinctrl_pm_select_xxx()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Mark

Thank you for your feedback

> > But, I can't find its paired pinctrl_pm_select_default_state().
> > It looks strange for me. Is this really needed ??
> 
> It's in snd_soc_resume() for active DAIs, or otherwise when we open the
> PCM.

OK, I see.
Now, I double checked about it.

In my understanding, we need these at open/close/suspend/resume.
But for component, it only has for suspend.
If we need these, I think we want to have these at open/close/resume.

Now, it uses pinctrl_pm_select_xxx() with "component->dev".

	pinctrl_pm_select_sleep_state(component->dev);
	                              ~~~~~~~~~~~~~~
But, this component->dev = dai->dev

	static struct snd_soc_dai *soc_add_dai(...)
	{
=>		struct device *dev = component->dev;
		...
=>		dai->dev = dev;
		...
	}

Thus, calling it from DAI only is very enough, I think.
In my check, open/close/suspend/resume all has DAI pinctrl_pm_select_xxx()
except suspend:Codec.
I guess, because suspend doesn't have Codec pinctrl_pm_select_xxx() somehow,
thus, someone added Component pinctrl_pm_select_xxx() instead somehow ??
But, what do you think ?

	|CPU	|Codec	|Component	|
open	|O	|O	|		|
close	|O	|O	|		|
suspend	|O	|	|O		|
resume	|O	|O	|		|
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux