diff options
author | Magnus Damm <damm@opensource.se> | 2010-03-19 00:47:19 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-04-07 03:17:01 -0400 |
commit | 927a7c9c1793def3a55d60c926d3945528e6bf1b (patch) | |
tree | d7ea66aa528c619644522041a553ce64e0e3638e /drivers/dma | |
parent | b2623a61cfd3c6badb8396dc85ab5a70f4a05f61 (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/Kconfig | 2 | ||||
-rw-r--r-- | drivers/dma/shdma.c | 8 |
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 | ||
129 | config SH_DMAE | 129 | config 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) |
797 | static irqreturn_t sh_dmae_err(int irq, void *data) | 797 | static 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) | |||
1106 | chan_probe_err: | 1106 | chan_probe_err: |
1107 | sh_dmae_chan_remove(shdev); | 1107 | sh_dmae_chan_remove(shdev); |
1108 | eirqres: | 1108 | eirqres: |
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); |
1111 | eirq_err: | 1111 | eirq_err: |
1112 | #endif | 1112 | #endif |