aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma
diff options
context:
space:
mode:
authorMagnus Damm <damm@opensource.se>2010-03-19 00:47:19 -0400
committerPaul Mundt <lethal@linux-sh.org>2010-04-07 03:17:01 -0400
commit927a7c9c1793def3a55d60c926d3945528e6bf1b (patch)
treed7ea66aa528c619644522041a553ce64e0e3638e /drivers/dma
parentb2623a61cfd3c6badb8396dc85ab5a70f4a05f61 (diff)
dmaengine: shdma: Enable on SH-Mobile ARM
Enable the shdma dmaengine driver on SH-Mobile ARM. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/dma')
-rw-r--r--drivers/dma/Kconfig2
-rw-r--r--drivers/dma/shdma.c8
2 files changed, 5 insertions, 5 deletions
diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
index c27f80e5d531..9d8ca990dde6 100644
--- a/drivers/dma/Kconfig
+++ b/drivers/dma/Kconfig
@@ -128,7 +128,7 @@ config TXX9_DMAC
128 128
129config SH_DMAE 129config SH_DMAE
130 tristate "Renesas SuperH DMAC support" 130 tristate "Renesas SuperH DMAC support"
131 depends on SUPERH && SH_DMA 131 depends on (SUPERH && SH_DMA) || (ARM && ARCH_SHMOBILE)
132 depends on !SH_DMA_API 132 depends on !SH_DMA_API
133 select DMA_ENGINE 133 select DMA_ENGINE
134 help 134 help
diff --git a/drivers/dma/shdma.c b/drivers/dma/shdma.c
index 7a18b580f626..bbc3dfeed9b2 100644
--- a/drivers/dma/shdma.c
+++ b/drivers/dma/shdma.c
@@ -793,7 +793,7 @@ static irqreturn_t sh_dmae_interrupt(int irq, void *data)
793 return ret; 793 return ret;
794} 794}
795 795
796#if defined(CONFIG_CPU_SH4) 796#if defined(CONFIG_CPU_SH4) || defined(CONFIG_ARCH_SHMOBILE)
797static irqreturn_t sh_dmae_err(int irq, void *data) 797static irqreturn_t sh_dmae_err(int irq, void *data)
798{ 798{
799 struct sh_dmae_device *shdev = (struct sh_dmae_device *)data; 799 struct sh_dmae_device *shdev = (struct sh_dmae_device *)data;
@@ -1034,7 +1034,7 @@ static int __init sh_dmae_probe(struct platform_device *pdev)
1034 /* Default transfer size of 32 bytes requires 32-byte alignment */ 1034 /* Default transfer size of 32 bytes requires 32-byte alignment */
1035 shdev->common.copy_align = LOG2_DEFAULT_XFER_SIZE; 1035 shdev->common.copy_align = LOG2_DEFAULT_XFER_SIZE;
1036 1036
1037#if defined(CONFIG_CPU_SH4) 1037#if defined(CONFIG_CPU_SH4) || defined(CONFIG_ARCH_SHMOBILE)
1038 chanirq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 1); 1038 chanirq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 1);
1039 1039
1040 if (!chanirq_res) 1040 if (!chanirq_res)
@@ -1059,7 +1059,7 @@ static int __init sh_dmae_probe(struct platform_device *pdev)
1059 1059
1060#else 1060#else
1061 chanirq_res = errirq_res; 1061 chanirq_res = errirq_res;
1062#endif /* CONFIG_CPU_SH4 */ 1062#endif /* CONFIG_CPU_SH4 || CONFIG_ARCH_SHMOBILE */
1063 1063
1064 if (chanirq_res->start == chanirq_res->end && 1064 if (chanirq_res->start == chanirq_res->end &&
1065 !platform_get_resource(pdev, IORESOURCE_IRQ, 1)) { 1065 !platform_get_resource(pdev, IORESOURCE_IRQ, 1)) {
@@ -1106,7 +1106,7 @@ static int __init sh_dmae_probe(struct platform_device *pdev)
1106chan_probe_err: 1106chan_probe_err:
1107 sh_dmae_chan_remove(shdev); 1107 sh_dmae_chan_remove(shdev);
1108eirqres: 1108eirqres:
1109#if defined(CONFIG_CPU_SH4) 1109#if defined(CONFIG_CPU_SH4) || defined(CONFIG_ARCH_SHMOBILE)
1110 free_irq(errirq, shdev); 1110 free_irq(errirq, shdev);
1111eirq_err: 1111eirq_err:
1112#endif 1112#endif