[alsa-devel] [PATCH 1/2] ASoC: wm8741: Fix setting interface format for DSP modes

Girdwood, Liam lrg at ti.com
Mon Oct 17 14:38:23 CEST 2011


On 17 October 2011 13:14, Axel Lin <axel.lin at gmail.com> wrote:

> According to the datasheet:
> Format Control (05h)
> BITS[3:2]
>        FMT[1:0] Audio data format selection
>                00 = right justified mode
>                01 = left justified mode
>                10 = I2S mode
>                11 = DSP mode
> BIT[4]  LRP Polarity selec for LRCLK/DSP mode select
>                0 = normal LRCLK poalrity/DSP mode A
>                1 = inverted LRCLK poarity/DSP mode B
>
> For SND_SOC_DAIFMT_DSP_A, we should set 0x000C instead of 0x0003.
> For SND_SOC_DAIFMT_DSP_B, we should set 0x001C instead of 0x0013.
>
> Signed-off-by: Axel Lin <axel.lin at gmail.com>
> ---
>  sound/soc/codecs/wm8741.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/soc/codecs/wm8741.c b/sound/soc/codecs/wm8741.c
> index a42b282..85ebe02 100644
> --- a/sound/soc/codecs/wm8741.c
> +++ b/sound/soc/codecs/wm8741.c
> @@ -339,10 +339,10 @@ static int wm8741_set_dai_fmt(struct snd_soc_dai
> *codec_dai,
>                iface |= 0x0004;
>                break;
>        case SND_SOC_DAIFMT_DSP_A:
> -               iface |= 0x0003;
> +               iface |= 0x000C;
>                break;
>        case SND_SOC_DAIFMT_DSP_B:
> -               iface |= 0x0013;
> +               iface |= 0x001C;
>                break;
>        default:
>                return -EINVAL;
> --
> 1.7.5.4
>
>
>
>
Both

Acked-by: Liam Girdwood <lrg at ti.com>


More information about the Alsa-devel mailing list