[alsa-devel] [PATCHv2 0/4] ASoC: tlv320dac33: Support for turning off codec

Liam Girdwood lrg at slimlogic.co.uk
Mon May 3 14:19:32 CEST 2010


On Fri, 2010-04-30 at 14:59 +0300, Peter Ujfalusi wrote:
> Hello,
> 
> Changes since v1:
> - patch 1: Removed extra register writes
> - patch 4:
>  - Let core to bring the codec to BIAS_OFF (set idle_bias_off)
>  - dac33_set_bias_level only takes care of power and minimum initialization
>  - PRE_DAPM widget event is replacing the dac33_pcm_pointer call to take
>    care of the initialization needed before _every_ playback.
> 
> There are few scenarios, which has to be taken care::
> 1. Analog bypass caused BIAS_OFF -> 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
> 2. Playback caused  BIAS_OFF -> BIAS_ON
>    We need to power on the codec, and do the chip init, and also we need
>    to execute the playback related configuration.
> 3. Playback start, while Analog bypass is on (BIAS_ON -> BIAS_ON)
>    We need to execute the playback related configuration. The codec is
>    already on.
> 4. Analog bypass enable, while playback (BIAS_ON -> BIAS_ON)
>    Nothing need to be done.
> 5. Playback start withing soc power down timeout (BIAS_ON -> BIAS_ON)
>    We need to execute the playback related configuration. The codec is
>    still on.
> 
> Since the power up, and the codec init is optimized, the added overhead
> in stream start is minimal.
> 
> Withing this patch, the hard_power function is now only doing what it
> supposed to: only handle the powers, and GPIO reset line.
> The codec initialization and state restore has been moved out.
> 

Applied.

Thanks !

Liam



More information about the Alsa-devel mailing list