7 Dec
2010
7 Dec
'10
1:48 p.m.
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@samsung.com
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;
paifb |= WM8580_AIF_LENGTH_24; break; case SNDRV_PCM_FORMAT_S32_LE:paifa |= 0x0;
paifa |= 0x10;
paifb |= WM8580_AIF_LENGTH_24;
paifa |= 0x0;
break; default: return -EINVAL;paifb |= WM8580_AIF_LENGTH_32;
Thanks
Liam
--
Freelance Developer, SlimLogic Ltd
ASoC and Voltage Regulator Maintainer.
http://www.slimlogic.co.uk