Re: [PATCH 3/3] ASoC: twl4030: enable routing audio to 'voice' interface.

From: NeilBrown
Date: Sun Nov 09 2014 - 18:55:04 EST


On Sat, 8 Nov 2014 09:27:56 +0000 Mark Brown <broonie@xxxxxxxxxx> wrote:

> On Sat, Nov 08, 2014 at 11:38:03AM +1100, NeilBrown wrote:
>
> > - twl_i2c_write_u8(TWL4030_MODULE_AUDIO_VOICE,
> > - TWL4030_VIF_TRI_EN,
> > - TWL4030_REG_VOICE_IF);
> > + /* These pins only relevant when voice_fmt set */
> > + snd_soc_dapm_disable_pin(&codec->dapm, "VOICEIN");
> > + snd_soc_dapm_disable_pin(&codec->dapm, "VOICEOUT");
>
> Given your previous patch are these trying to control a digital link by
> any chance? If they are they should be removed, and in any case this
> sort of thing looks like a machine driver issue.


Depends on what you mean by "control".
They declare that a digital link is, or is not, active so that the related
amplifiers, DACs, etc can be powered up or down.

The "VIF_TRI_EN" puts the digital interface in 'tristate' mode which
effectively disables it. So that bit certainly "controls" the digital link.


If I shouldn't have these controls here, where should I have them? How
should I turn on/off the widgets that drive the VOICE interface?

You say it looks like "a machine driver issue".
alsa/soc/machine.txt says that "machine" is a synonym for "board".
I thought we were getting rid of board files and replacing them with
devicetree. You seem to be implying that we are keeping board files (under
the name "machine driver") for the audio config.

Is that correct? What is the reason for that?

Thanks,
NeilBrown

Attachment: pgp055_kX_GIZ.pgp
Description: OpenPGP digital signature