Browse Source

sh: define DMA slaves per CPU type, remove now redundant header

Now that DMA slave IDs are only used used in platform specific code and have
become opaque cookies for the rest of the code, we can make the, CPU specific
too.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Guennadi Liakhovetski 15 years ago
parent
commit
10440af1bc

+ 0 - 34
arch/sh/include/asm/dmaengine.h

@@ -1,34 +0,0 @@
-/*
- * Header for the new SH dmaengine driver
- *
- * Copyright (C) 2010 Guennadi Liakhovetski <g.liakhovetski@gmx.de>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- */
-#ifndef ASM_DMAENGINE_H
-#define ASM_DMAENGINE_H
-
-#include <linux/sh_dma.h>
-
-enum {
-	SHDMA_SLAVE_SCIF0_TX,
-	SHDMA_SLAVE_SCIF0_RX,
-	SHDMA_SLAVE_SCIF1_TX,
-	SHDMA_SLAVE_SCIF1_RX,
-	SHDMA_SLAVE_SCIF2_TX,
-	SHDMA_SLAVE_SCIF2_RX,
-	SHDMA_SLAVE_SCIF3_TX,
-	SHDMA_SLAVE_SCIF3_RX,
-	SHDMA_SLAVE_SCIF4_TX,
-	SHDMA_SLAVE_SCIF4_RX,
-	SHDMA_SLAVE_SCIF5_TX,
-	SHDMA_SLAVE_SCIF5_RX,
-	SHDMA_SLAVE_SIUA_TX,
-	SHDMA_SLAVE_SIUA_RX,
-	SHDMA_SLAVE_SIUB_TX,
-	SHDMA_SLAVE_SIUB_RX,
-};
-
-#endif

+ 0 - 2
arch/sh/include/asm/siu.h

@@ -11,8 +11,6 @@
 #ifndef ASM_SIU_H
 #ifndef ASM_SIU_H
 #define ASM_SIU_H
 #define ASM_SIU_H
 
 
-#include <asm/dmaengine.h>
-
 struct device;
 struct device;
 
 
 struct siu_platform {
 struct siu_platform {

+ 15 - 0
arch/sh/include/cpu-sh4/cpu/sh7722.h

@@ -235,4 +235,19 @@ enum {
 	HWBLK_NR,
 	HWBLK_NR,
 };
 };
 
 
+enum {
+	SHDMA_SLAVE_SCIF0_TX,
+	SHDMA_SLAVE_SCIF0_RX,
+	SHDMA_SLAVE_SCIF1_TX,
+	SHDMA_SLAVE_SCIF1_RX,
+	SHDMA_SLAVE_SCIF2_TX,
+	SHDMA_SLAVE_SCIF2_RX,
+	SHDMA_SLAVE_SIUA_TX,
+	SHDMA_SLAVE_SIUA_RX,
+	SHDMA_SLAVE_SIUB_TX,
+	SHDMA_SLAVE_SIUB_RX,
+	SHDMA_SLAVE_SDHI0_TX,
+	SHDMA_SLAVE_SDHI0_RX,
+};
+
 #endif /* __ASM_SH7722_H__ */
 #endif /* __ASM_SH7722_H__ */

+ 19 - 0
arch/sh/include/cpu-sh4/cpu/sh7724.h

@@ -283,4 +283,23 @@ enum {
 	HWBLK_NR,
 	HWBLK_NR,
 };
 };
 
 
+enum {
+	SHDMA_SLAVE_SCIF0_TX,
+	SHDMA_SLAVE_SCIF0_RX,
+	SHDMA_SLAVE_SCIF1_TX,
+	SHDMA_SLAVE_SCIF1_RX,
+	SHDMA_SLAVE_SCIF2_TX,
+	SHDMA_SLAVE_SCIF2_RX,
+	SHDMA_SLAVE_SCIF3_TX,
+	SHDMA_SLAVE_SCIF3_RX,
+	SHDMA_SLAVE_SCIF4_TX,
+	SHDMA_SLAVE_SCIF4_RX,
+	SHDMA_SLAVE_SCIF5_TX,
+	SHDMA_SLAVE_SCIF5_RX,
+	SHDMA_SLAVE_SDHI0_TX,
+	SHDMA_SLAVE_SDHI0_RX,
+	SHDMA_SLAVE_SDHI1_TX,
+	SHDMA_SLAVE_SDHI1_RX,
+};
+
 #endif /* __ASM_SH7724_H__ */
 #endif /* __ASM_SH7724_H__ */

+ 0 - 1
arch/sh/kernel/cpu/sh4a/setup-sh7722.c

@@ -17,7 +17,6 @@
 #include <linux/usb/m66592.h>
 #include <linux/usb/m66592.h>
 
 
 #include <asm/clock.h>
 #include <asm/clock.h>
-#include <asm/dmaengine.h>
 #include <asm/mmzone.h>
 #include <asm/mmzone.h>
 #include <asm/siu.h>
 #include <asm/siu.h>
 
 

+ 1 - 1
arch/sh/kernel/cpu/sh4a/setup-sh7724.c

@@ -18,13 +18,13 @@
 #include <linux/mm.h>
 #include <linux/mm.h>
 #include <linux/serial_sci.h>
 #include <linux/serial_sci.h>
 #include <linux/uio_driver.h>
 #include <linux/uio_driver.h>
+#include <linux/sh_dma.h>
 #include <linux/sh_timer.h>
 #include <linux/sh_timer.h>
 #include <linux/io.h>
 #include <linux/io.h>
 #include <linux/notifier.h>
 #include <linux/notifier.h>
 
 
 #include <asm/suspend.h>
 #include <asm/suspend.h>
 #include <asm/clock.h>
 #include <asm/clock.h>
-#include <asm/dmaengine.h>
 #include <asm/mmzone.h>
 #include <asm/mmzone.h>
 
 
 #include <cpu/dma-register.h>
 #include <cpu/dma-register.h>

+ 1 - 2
arch/sh/kernel/cpu/sh4a/setup-sh7780.c

@@ -12,10 +12,9 @@
 #include <linux/serial.h>
 #include <linux/serial.h>
 #include <linux/io.h>
 #include <linux/io.h>
 #include <linux/serial_sci.h>
 #include <linux/serial_sci.h>
+#include <linux/sh_dma.h>
 #include <linux/sh_timer.h>
 #include <linux/sh_timer.h>
 
 
-#include <asm/dmaengine.h>
-
 #include <cpu/dma-register.h>
 #include <cpu/dma-register.h>
 
 
 static struct plat_sci_port scif0_platform_data = {
 static struct plat_sci_port scif0_platform_data = {

+ 1 - 1
arch/sh/kernel/cpu/sh4a/setup-sh7785.c

@@ -13,9 +13,9 @@
 #include <linux/serial_sci.h>
 #include <linux/serial_sci.h>
 #include <linux/io.h>
 #include <linux/io.h>
 #include <linux/mm.h>
 #include <linux/mm.h>
+#include <linux/sh_dma.h>
 #include <linux/sh_timer.h>
 #include <linux/sh_timer.h>
 
 
-#include <asm/dmaengine.h>
 #include <asm/mmzone.h>
 #include <asm/mmzone.h>
 
 
 #include <cpu/dma-register.h>
 #include <cpu/dma-register.h>

+ 1 - 2
sound/soc/sh/siu.h

@@ -71,8 +71,7 @@ struct siu_firmware {
 #include <linux/dmaengine.h>
 #include <linux/dmaengine.h>
 #include <linux/interrupt.h>
 #include <linux/interrupt.h>
 #include <linux/io.h>
 #include <linux/io.h>
-
-#include <asm/dmaengine.h>
+#include <linux/sh_dma.h>
 
 
 #include <sound/core.h>
 #include <sound/core.h>
 #include <sound/pcm.h>
 #include <sound/pcm.h>

+ 4 - 5
sound/soc/sh/siu_pcm.c

@@ -31,7 +31,6 @@
 #include <sound/pcm_params.h>
 #include <sound/pcm_params.h>
 #include <sound/soc-dai.h>
 #include <sound/soc-dai.h>
 
 
-#include <asm/dmaengine.h>
 #include <asm/siu.h>
 #include <asm/siu.h>
 
 
 #include "siu.h"
 #include "siu.h"
@@ -358,13 +357,13 @@ static int siu_pcm_open(struct snd_pcm_substream *ss)
 	if (ss->stream == SNDRV_PCM_STREAM_PLAYBACK) {
 	if (ss->stream == SNDRV_PCM_STREAM_PLAYBACK) {
 		siu_stream = &port_info->playback;
 		siu_stream = &port_info->playback;
 		param = &siu_stream->param;
 		param = &siu_stream->param;
-		param->slave_id = port ? SHDMA_SLAVE_SIUB_TX :
-			SHDMA_SLAVE_SIUA_TX;
+		param->slave_id = port ? pdata->dma_slave_tx_b :
+			pdata->dma_slave_tx_a;
 	} else {
 	} else {
 		siu_stream = &port_info->capture;
 		siu_stream = &port_info->capture;
 		param = &siu_stream->param;
 		param = &siu_stream->param;
-		param->slave_id = port ? SHDMA_SLAVE_SIUB_RX :
-			SHDMA_SLAVE_SIUA_RX;
+		param->slave_id = port ? pdata->dma_slave_rx_b :
+			pdata->dma_slave_rx_a;
 	}
 	}
 
 
 	param->dma_dev = pdata->dma_dev;
 	param->dma_dev = pdata->dma_dev;