linux_old1/sound/soc/fsl
Timur Tabi be41e941d5 ALSA: asoc: restrict sample rate and size in Freescale MPC8610 sound drivers
The Freescale MPC8610 SSI device has the option of using one clock for both
transmit and receive (synchronous mode), or independent clocks (asynchronous).
The SSI driver, however, programs the SSI into synchronous mode and then
tries to program the clock registers independently.  The result is that the wrong
sample size is usually generated during recording.

This patch fixes the discrepancy by restricting the sample rate and sample size
of the playback and capture streams.  The SSI driver remembers which stream
is opened first.  When a second stream is opened, that stream is constrained
to the same sample rate and size as the first stream.

A future version of this driver will lift the sample size restriction.
Supporting independent sample rates is more difficult, because only certain
codecs provide dual independent clocks.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-07-29 12:27:10 +02:00
..
Kconfig ALSA: asoc: kbuild - only show menus for the current ASoC CPU platform. 2008-07-14 09:01:01 +02:00
Makefile [ALSA] Add ASoC drivers for the Freescale MPC8610 SoC 2008-01-31 17:29:55 +01:00
fsl_dma.c ALSA: asoc: restrict sample rate and size in Freescale MPC8610 sound drivers 2008-07-29 12:27:10 +02:00
fsl_dma.h ALSA: asoc: fsl - merge structs snd_soc_codec_dai and snd_soc_cpu_dai. 2008-07-10 09:32:40 +02:00
fsl_ssi.c ALSA: asoc: restrict sample rate and size in Freescale MPC8610 sound drivers 2008-07-29 12:27:10 +02:00
fsl_ssi.h ALSA: asoc: fsl - merge structs snd_soc_codec_dai and snd_soc_cpu_dai. 2008-07-10 09:32:40 +02:00
mpc8610_hpcd.c ALSA: asoc: machines - add Digital Audio Interface (DAI) control functions. 2008-07-10 09:32:51 +02:00