summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGary Zhang <b13634@freescale.com>2012-04-13 16:30:54 +0800
committerFrank Li <Frank.Li@freescale.com>2012-04-13 18:01:50 +0800
commit90e568a0b14aa1802a4e7f932c0e76b31c2b309a (patch)
tree4be03a67c460f0539a073a5d7b8de51bdd1d8d4e
parent2ccdc2e0e1d028a6a15a26b5472e40754c5e8692 (diff)
ENGR00179628-1 SSI: enable dual-fifo feature as default
enable SSI dual-fifo feature as default setting Signed-off-by: Gary Zhang <b13634@freescale.com>
-rw-r--r--drivers/dma/imx-sdma.c5
-rw-r--r--sound/soc/imx/imx-ssi.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
index 6f168fe568a8..1b98d7306d25 100644
--- a/drivers/dma/imx-sdma.c
+++ b/drivers/dma/imx-sdma.c
@@ -576,6 +576,9 @@ static void sdma_get_pc(struct sdma_channel *sdmac,
emi_2_per = sdma->script_addrs->mcu_2_app_addr;
break;
case IMX_DMATYPE_SSI_SP:
+ per_2_emi = sdma->script_addrs->ssish_2_mcu_addr;
+ emi_2_per = sdma->script_addrs->mcu_2_ssish_addr;
+ break;
case IMX_DMATYPE_MMC:
case IMX_DMATYPE_SDHC:
case IMX_DMATYPE_CSPI_SP:
@@ -1155,7 +1158,7 @@ static void sdma_issue_pending(struct dma_chan *chan)
*/
}
-#define SDMA_SCRIPT_ADDRS_ARRAY_SIZE_V1 34
+#define SDMA_SCRIPT_ADDRS_ARRAY_SIZE_V1 37
static void sdma_add_scripts(struct sdma_engine *sdma,
const struct sdma_script_start_addrs *addr)
diff --git a/sound/soc/imx/imx-ssi.c b/sound/soc/imx/imx-ssi.c
index 9fdb5fda4b45..a37c98b925ac 100644
--- a/sound/soc/imx/imx-ssi.c
+++ b/sound/soc/imx/imx-ssi.c
@@ -157,6 +157,10 @@ static int imx_ssi_set_dai_fmt(struct snd_soc_dai *cpu_dai, unsigned int fmt)
if (ssi->flags & IMX_SSI_SYN)
scr |= SSI_SCR_SYN;
+ /* Dual-FIFO support */
+ strcr |= SSI_STCR_TFEN1;
+ scr |= SSI_SCR_TCH_EN;
+
writel(strcr, ssi->base + SSI_STCR);
if ((fmt & SND_SOC_DAIFMT_MASTER_MASK) == SND_SOC_DAIFMT_CBS_CFS)
strcr &= ~(SSI_STCR_TFDIR | SSI_STCR_TXDIR);