On Friday 30 April 2010 11:41:00 ext Mark Brown wrote:
On Fri, Apr 30, 2010 at 10:31:55AM +0300, Peter Ujfalusi wrote:
When the codec is in STANDBY we can actually turn it off. When the codec is off, than the associated regulator can be also turned off (if the number of users on the regulator is 0).
You can just set idle_bias_off in the CODEC and then the core will push you down into _BIAS_OFF.
Good idea. Needed some code movement, but works fine. Thanks.
There are few scenarios, which has to be taken care::
Analog bypass caused BIAS_STANDBY -> BIAS_ON
We need to power on the codec, and do the chip init, but we does not need to execute the playback related configuration
Moving the playback related configuration into events on the DAC widgets (or probably a supply connected to the DAC widgets) seems like a good move for a lot of these scenarios? The core will then take care of ensuring that the startup sequence for the playback is called for you and the states can do what they're supposed to more directly.
This is not working. Actually it works, if we come from BIAS_OFF, but... If I restart the playback fast (within asoc timeout for BIAS change), than the widget will not get event (since it is still powered). This means that I can not do the needed reconfiguration for the tlv320dac33 -> audio breaks.
I will keep the current logic, but move it a bit with the idle_bias_off change.
Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel