[alsa-devel] [PATCH][ASoC V2] Update MPC8610 drivers to pick the right DMA channels

Timur Tabi timur at freescale.com
Fri Jun 6 18:01:53 CEST 2008


On the Freescale MPC8610 SOC, SSI1 is hard-wired to DMA channels 0 and 1,
and SSI2 is hard-wired to DMA channels 2 and 3.  Fix fsl_ssi.c to reflect
that.

Signed-off-by: Timur Tabi <timur at freescale.com>
---
 sound/soc/fsl/fsl_ssi.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c
index 9d141ec..4f66e84 100644
--- a/sound/soc/fsl/fsl_ssi.c
+++ b/sound/soc/fsl/fsl_ssi.c
@@ -790,13 +790,13 @@ static int fsl_ssi_probe(struct of_device *ofdev,
 	/*
 	 * Get the DMA information.  If it's an older device tree (i.e. without
 	 * an "fsl,playback-dma" property), then we assume that SSI1 uses DMA1
-	 * Channels 0 and 1, and SSI2 uses DMA2 Channels 0 and 1.
+	 * Channels 0 and 1, and SSI2 uses DMA1 Channels 2 and 3.
 	 */
 	dma_ph = of_get_property(np, "fsl,playback-dma", NULL);
 	if (!dma_ph) {
 		dev_warn(&ofdev->dev, "please update your device tree\n");
-		dma_np[0] = find_dma_node(ssi_info->id, 0);
-		dma_np[1] = find_dma_node(ssi_info->id, 1);
+		dma_np[0] = find_dma_node(0, ssi_info->id ? 2 : 0);
+		dma_np[1] = find_dma_node(0, ssi_info->id ? 3 : 1);
 	} else {
 		dma_np[0] = of_find_node_by_phandle(*dma_ph);
 		dma_ph = of_get_property(np, "fsl,capture-dma", NULL);
-- 
1.5.5



More information about the Alsa-devel mailing list