diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2009-12-17 00:18:27 -0500 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-12-17 00:18:27 -0500 |
commit | 39b27f4cc332abed2e37c0554a823312955b8afc (patch) | |
tree | 9f6b4b4f0cec6ff126e75c03a7315cc2c1a29a19 /arch/sh | |
parent | 718deb6b61e34c200c1f2b706176d9aac334cb2d (diff) |
sh: dmaengine support for sh7724.
Add a dmaengine platform device to sh7724, fix DMA channel interrupt numbers.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh')
-rw-r--r-- | arch/sh/include/cpu-sh4/cpu/dma-sh4a.h | 8 | ||||
-rw-r--r-- | arch/sh/kernel/cpu/sh4a/setup-sh7724.c | 15 |
2 files changed, 19 insertions, 4 deletions
diff --git a/arch/sh/include/cpu-sh4/cpu/dma-sh4a.h b/arch/sh/include/cpu-sh4/cpu/dma-sh4a.h index f0886bc880e0..c4ed660c14cf 100644 --- a/arch/sh/include/cpu-sh4/cpu/dma-sh4a.h +++ b/arch/sh/include/cpu-sh4/cpu/dma-sh4a.h | |||
@@ -19,10 +19,10 @@ | |||
19 | #elif defined(CONFIG_CPU_SUBTYPE_SH7723) || \ | 19 | #elif defined(CONFIG_CPU_SUBTYPE_SH7723) || \ |
20 | defined(CONFIG_CPU_SUBTYPE_SH7724) | 20 | defined(CONFIG_CPU_SUBTYPE_SH7724) |
21 | #define DMTE0_IRQ 48 /* DMAC0A*/ | 21 | #define DMTE0_IRQ 48 /* DMAC0A*/ |
22 | #define DMTE4_IRQ 40 /* DMAC0B */ | 22 | #define DMTE4_IRQ 76 /* DMAC0B */ |
23 | #define DMTE6_IRQ 42 | 23 | #define DMTE6_IRQ 40 |
24 | #define DMTE8_IRQ 76 /* DMAC1A */ | 24 | #define DMTE8_IRQ 42 /* DMAC1A */ |
25 | #define DMTE9_IRQ 77 | 25 | #define DMTE9_IRQ 43 |
26 | #define DMTE10_IRQ 72 /* DMAC1B */ | 26 | #define DMTE10_IRQ 72 /* DMAC1B */ |
27 | #define DMTE11_IRQ 73 | 27 | #define DMTE11_IRQ 73 |
28 | #define DMAE0_IRQ 78 /* DMA Error IRQ*/ | 28 | #define DMAE0_IRQ 78 /* DMA Error IRQ*/ |
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7724.c b/arch/sh/kernel/cpu/sh4a/setup-sh7724.c index a52f35117e82..d32f96c1cc15 100644 --- a/arch/sh/kernel/cpu/sh4a/setup-sh7724.c +++ b/arch/sh/kernel/cpu/sh4a/setup-sh7724.c | |||
@@ -23,9 +23,23 @@ | |||
23 | #include <linux/notifier.h> | 23 | #include <linux/notifier.h> |
24 | #include <asm/suspend.h> | 24 | #include <asm/suspend.h> |
25 | #include <asm/clock.h> | 25 | #include <asm/clock.h> |
26 | #include <asm/dma-sh.h> | ||
26 | #include <asm/mmzone.h> | 27 | #include <asm/mmzone.h> |
27 | #include <cpu/sh7724.h> | 28 | #include <cpu/sh7724.h> |
28 | 29 | ||
30 | /* DMA */ | ||
31 | static struct sh_dmae_pdata dma_platform_data = { | ||
32 | .mode = SHDMA_DMAOR1, | ||
33 | }; | ||
34 | |||
35 | static struct platform_device dma_device = { | ||
36 | .name = "sh-dma-engine", | ||
37 | .id = -1, | ||
38 | .dev = { | ||
39 | .platform_data = &dma_platform_data, | ||
40 | }, | ||
41 | }; | ||
42 | |||
29 | /* Serial */ | 43 | /* Serial */ |
30 | static struct plat_sci_port scif0_platform_data = { | 44 | static struct plat_sci_port scif0_platform_data = { |
31 | .mapbase = 0xffe00000, | 45 | .mapbase = 0xffe00000, |
@@ -649,6 +663,7 @@ static struct platform_device *sh7724_devices[] __initdata = { | |||
649 | &tmu3_device, | 663 | &tmu3_device, |
650 | &tmu4_device, | 664 | &tmu4_device, |
651 | &tmu5_device, | 665 | &tmu5_device, |
666 | &dma_device, | ||
652 | &rtc_device, | 667 | &rtc_device, |
653 | &iic0_device, | 668 | &iic0_device, |
654 | &iic1_device, | 669 | &iic1_device, |