diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-04-16 09:14:35 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-04-16 09:14:35 -0400 |
commit | 8d98f2246d7c622198ae0b8ca66f1c82b8a25377 (patch) | |
tree | 6e1dd0347aadc121f6933f070bffd34bb3b33f70 /sound/soc/omap/omap-mcbsp.c | |
parent | 3ba191ce051a32b20757f063120496e860ea8f9d (diff) | |
parent | 002fbad829883a3ad9b185077f9e54c37dc7502d (diff) |
Merge branch 'for-2.6.30' into for-2.6.31
Diffstat (limited to 'sound/soc/omap/omap-mcbsp.c')
-rw-r--r-- | sound/soc/omap/omap-mcbsp.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sound/soc/omap/omap-mcbsp.c b/sound/soc/omap/omap-mcbsp.c index 2b4a8da09918..4d6ef0bf71dd 100644 --- a/sound/soc/omap/omap-mcbsp.c +++ b/sound/soc/omap/omap-mcbsp.c | |||
@@ -290,7 +290,7 @@ static int omap_mcbsp_dai_hw_params(struct snd_pcm_substream *substream, | |||
290 | case SND_SOC_DAIFMT_DSP_A: | 290 | case SND_SOC_DAIFMT_DSP_A: |
291 | case SND_SOC_DAIFMT_DSP_B: | 291 | case SND_SOC_DAIFMT_DSP_B: |
292 | regs->srgr2 |= FPER(wlen * channels - 1); | 292 | regs->srgr2 |= FPER(wlen * channels - 1); |
293 | regs->srgr1 |= FWID(wlen * channels - 2); | 293 | regs->srgr1 |= FWID(0); |
294 | break; | 294 | break; |
295 | } | 295 | } |
296 | 296 | ||
@@ -309,6 +309,7 @@ static int omap_mcbsp_dai_set_dai_fmt(struct snd_soc_dai *cpu_dai, | |||
309 | { | 309 | { |
310 | struct omap_mcbsp_data *mcbsp_data = to_mcbsp(cpu_dai->private_data); | 310 | struct omap_mcbsp_data *mcbsp_data = to_mcbsp(cpu_dai->private_data); |
311 | struct omap_mcbsp_reg_cfg *regs = &mcbsp_data->regs; | 311 | struct omap_mcbsp_reg_cfg *regs = &mcbsp_data->regs; |
312 | unsigned int temp_fmt = fmt; | ||
312 | 313 | ||
313 | if (mcbsp_data->configured) | 314 | if (mcbsp_data->configured) |
314 | return 0; | 315 | return 0; |
@@ -342,6 +343,8 @@ static int omap_mcbsp_dai_set_dai_fmt(struct snd_soc_dai *cpu_dai, | |||
342 | /* 0-bit data delay */ | 343 | /* 0-bit data delay */ |
343 | regs->rcr2 |= RDATDLY(0); | 344 | regs->rcr2 |= RDATDLY(0); |
344 | regs->xcr2 |= XDATDLY(0); | 345 | regs->xcr2 |= XDATDLY(0); |
346 | /* Invert FS polarity configuration */ | ||
347 | temp_fmt ^= SND_SOC_DAIFMT_NB_IF; | ||
345 | break; | 348 | break; |
346 | default: | 349 | default: |
347 | /* Unsupported data format */ | 350 | /* Unsupported data format */ |
@@ -365,7 +368,7 @@ static int omap_mcbsp_dai_set_dai_fmt(struct snd_soc_dai *cpu_dai, | |||
365 | } | 368 | } |
366 | 369 | ||
367 | /* Set bit clock (CLKX/CLKR) and FS polarities */ | 370 | /* Set bit clock (CLKX/CLKR) and FS polarities */ |
368 | switch (fmt & SND_SOC_DAIFMT_INV_MASK) { | 371 | switch (temp_fmt & SND_SOC_DAIFMT_INV_MASK) { |
369 | case SND_SOC_DAIFMT_NB_NF: | 372 | case SND_SOC_DAIFMT_NB_NF: |
370 | /* | 373 | /* |
371 | * Normal BCLK + FS. | 374 | * Normal BCLK + FS. |