Timur Tabi wrote:
Enable mmap support in the MPC8610 ASoC driver. The driver can use ALSA's default mmap functionality, it was just not enabled previously.
Signed-off-by: Timur Tabi timur@freescale.com
[sorry, I may be completely wrong below about the .page callback purpose - in this case, just confirm that the testcase works]
Hm, the "struct snd_pcm_ops fsl_dma_ops" doesn't contain the .page callback. With saa7134-alsa, this led to the "device claims to support mmap but actually doesn't work" bug, see the following subthread:
http://mailman.alsa-project.org/pipermail/alsa-devel/2007-October/003773.htm...
IOW: have you actually tested that the following commands work (X,Y refer to the FSL chip)?
aplay -M -D hw:X,Y sample.wav arecord -f cd -M -D:X,Y capture.wav
sound/soc/fsl/fsl_dma.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/sound/soc/fsl/fsl_dma.c b/sound/soc/fsl/fsl_dma.c index 2173203..652514f 100644 --- a/sound/soc/fsl/fsl_dma.c +++ b/sound/soc/fsl/fsl_dma.c @@ -136,7 +136,9 @@ struct fsl_dma_private { */ static const struct snd_pcm_hardware fsl_dma_hardware = {
- .info = SNDRV_PCM_INFO_INTERLEAVED,
- .info = SNDRV_PCM_INFO_INTERLEAVED |
SNDRV_PCM_INFO_MMAP |
.formats = FSLDMA_PCM_FORMATS, .rates = FSLDMA_PCM_RATES, .rate_min = 5512,SNDRV_PCM_INFO_MMAP_VALID,