[alsa-devel] How to set TWL4030 to Option2

Joonyoung Shim jy0922.shim at samsung.com
Fri May 15 13:00:07 CEST 2009

On 5/15/2009 7:05 PM, Lopez Cruz, Misael wrote:
>>> In current code, as you say, you have to directly change 
>>> the value of the reg cache for setting to option2, also
>>> you have to modify the REG_OPTION and REG_VOICE_IF reg for
>>> voice, but this is temporary method.
>> This can be done with a register write from the DAI init()
>> function in the machine driver in order to avoid modifying
>> twl4030.c itself.
> For audio and voice interface, following things need to be configured:
> Audio interface:
> - Output pins state: high impendance or application mode
> - Enable audio interface
> Voice interface:
> - Enable voice data input
> - Enable voice data output
> - Output pins state: high impedance or application mode
> - Enable voice interface
> I think that interfaces can be enabled in DAI init as Mark suggests,

Yes, but i worry about whether this reg value can be changed on the fly
or not.

> but input/output should be enabled depending on whether we are doing
> playback/capture or not, and then they should be handled in the codec
> driver.

Hmm, the twl4030 codec can do the voice communication at the same time
while doing playback/capture, is not it?

> For the codec operation mode selection, I still think Peter's
> advice is more appropriate because options1,2 are not really tight to
> DAIs. For example, we can be in option2 (voice/audio) and do
> transferences using both DAIs: I2S and PCM.

More information about the Alsa-devel mailing list