summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorShengjiu Wang <b02247@freescale.com>2013-08-12 14:17:13 +0800
committerNitin Garg <nitin.garg@freescale.com>2015-01-15 21:17:58 -0600
commit2f4090bda7904e86fb260488b9e62be84d64656f (patch)
tree4c85f484c6a59ca2b74aed7aeb3cf963bfd4adf4 /sound
parent204aa5280ca6979596f326aefe897e75ebcd6aa2 (diff)
ENGR00274585-6 ASoC: fsl: update format and buffer size in the pcm dma
1. add 24bit format support. 2. enlarge the buffer size for ESAI. Signed-off-by: Shengjiu Wang <b02247@freescale.com> (cherry picked from commit a20054a079076fa62c2e4a24218697894a387e4c)
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/fsl/imx-pcm-dma.c4
-rw-r--r--sound/soc/fsl/imx-pcm.h4
2 files changed, 6 insertions, 2 deletions
diff --git a/sound/soc/fsl/imx-pcm-dma.c b/sound/soc/fsl/imx-pcm-dma.c
index 0db94f492e97..1101283a3f65 100644
--- a/sound/soc/fsl/imx-pcm-dma.c
+++ b/sound/soc/fsl/imx-pcm-dma.c
@@ -40,7 +40,7 @@ static const struct snd_pcm_hardware imx_pcm_hardware = {
SNDRV_PCM_INFO_MMAP_VALID |
SNDRV_PCM_INFO_PAUSE |
SNDRV_PCM_INFO_RESUME,
- .buffer_bytes_max = IMX_SSI_DMABUF_SIZE,
+ .buffer_bytes_max = IMX_DEFAULT_DMABUF_SIZE,
.period_bytes_min = 128,
.period_bytes_max = 65535, /* Limited by SDMA engine */
.periods_min = 2,
@@ -52,7 +52,7 @@ static const struct snd_dmaengine_pcm_config imx_dmaengine_pcm_config = {
.pcm_hardware = &imx_pcm_hardware,
.prepare_slave_config = snd_dmaengine_pcm_prepare_slave_config,
.compat_filter_fn = filter,
- .prealloc_buffer_size = IMX_SSI_DMABUF_SIZE,
+ .prealloc_buffer_size = IMX_DEFAULT_DMABUF_SIZE,
};
int imx_pcm_dma_init(struct platform_device *pdev)
diff --git a/sound/soc/fsl/imx-pcm.h b/sound/soc/fsl/imx-pcm.h
index c79cb27473be..703fe3424430 100644
--- a/sound/soc/fsl/imx-pcm.h
+++ b/sound/soc/fsl/imx-pcm.h
@@ -18,7 +18,11 @@
/*
* Do not change this as the FIQ handler depends on this size
*/
+#define IMX_DEFAULT_DMABUF_SIZE (256 * 1024)
#define IMX_SSI_DMABUF_SIZE (64 * 1024)
+#define IMX_SPDIF_DMABUF_SIZE (64 * 1024)
+#define IMX_ESAI_DMABUF_SIZE (256 * 1024)
+#define IMX_ASRC_DMABUF_SIZE (256 * 1024)
static inline void
imx_pcm_dma_params_init_data(struct imx_dma_data *dma_data,