On Tue, 2010-12-07 at 19:23 +0900, Jassi Brar wrote: > In case of SNDRV_PCM_FORMAT_S32_LE, we need to set WM8580_AIF_LENGTH_32, > rather than WM8580_AIF_LENGTH_24. > Also, the BCLK has to be 64fs, for sample size of 20, 24 and 32 bits. > > Signed-off-by: Jassi Brar <jassi.brar@xxxxxxxxxxx> > --- > sound/soc/codecs/wm8580.c | 8 ++++---- > 1 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/sound/soc/codecs/wm8580.c b/sound/soc/codecs/wm8580.c > index cb7765f..45efc94 100644 > --- a/sound/soc/codecs/wm8580.c > +++ b/sound/soc/codecs/wm8580.c > @@ -491,16 +491,16 @@ static int wm8580_paif_hw_params(struct snd_pcm_substream *substream, > paifa |= 0x8; > break; > case SNDRV_PCM_FORMAT_S20_3LE: > - paifa |= 0x10; > + paifa |= 0x0; Any reason why we are OR ing paifa with 0 ? > paifb |= WM8580_AIF_LENGTH_20; > break; > case SNDRV_PCM_FORMAT_S24_LE: > - paifa |= 0x10; > + paifa |= 0x0; > paifb |= WM8580_AIF_LENGTH_24; > break; > case SNDRV_PCM_FORMAT_S32_LE: > - paifa |= 0x10; > - paifb |= WM8580_AIF_LENGTH_24; > + paifa |= 0x0; > + paifb |= WM8580_AIF_LENGTH_32; > break; > default: > return -EINVAL; Thanks Liam -- Freelance Developer, SlimLogic Ltd ASoC and Voltage Regulator Maintainer. http://www.slimlogic.co.uk _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel