From ad83eaafdb2d23cde41dba762618037ffdd0272b Mon Sep 17 00:00:00 2001 From: Russell King Date: Mon, 9 Jan 2012 21:45:51 +0000 Subject: [PATCH] --- yaml --- r: 296331 b: refs/heads/master c: 7931d92f4f38100061cf6b8a9737967057f94871 h: refs/heads/master i: 296329: 7e2c2fb73e10470d6586b0e26f8f2ad99c6e8038 296327: 7b40013d6d52d87082b70711eeec328d90c8ada2 v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-sa1100/generic.c | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index a7a0608b5180..fdbf71d52357 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 6365bead25efc84a4cf4aa9b0a7638f8a970cdff +refs/heads/master: 7931d92f4f38100061cf6b8a9737967057f94871 diff --git a/trunk/arch/arm/mach-sa1100/generic.c b/trunk/arch/arm/mach-sa1100/generic.c index bb10ee2cb89f..52ea6229818f 100644 --- a/trunk/arch/arm/mach-sa1100/generic.c +++ b/trunk/arch/arm/mach-sa1100/generic.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -350,6 +351,29 @@ static struct platform_device sa11x0rtc_device = { .id = -1, }; +static struct resource sa11x0dma_resources[] = { + DEFINE_RES_MEM(__PREG(DDAR(0)), 6 * DMASp), + DEFINE_RES_IRQ(IRQ_DMA0), + DEFINE_RES_IRQ(IRQ_DMA1), + DEFINE_RES_IRQ(IRQ_DMA2), + DEFINE_RES_IRQ(IRQ_DMA3), + DEFINE_RES_IRQ(IRQ_DMA4), + DEFINE_RES_IRQ(IRQ_DMA5), +}; + +static u64 sa11x0dma_dma_mask = DMA_BIT_MASK(32); + +static struct platform_device sa11x0dma_device = { + .name = "sa11x0-dma", + .id = -1, + .dev = { + .dma_mask = &sa11x0dma_dma_mask, + .coherent_dma_mask = 0xffffffff, + }, + .num_resources = ARRAY_SIZE(sa11x0dma_resources), + .resource = sa11x0dma_resources, +}; + static struct platform_device *sa11x0_devices[] __initdata = { &sa11x0udc_device, &sa11x0uart1_device, @@ -358,6 +382,7 @@ static struct platform_device *sa11x0_devices[] __initdata = { &sa11x0pcmcia_device, &sa11x0fb_device, &sa11x0rtc_device, + &sa11x0dma_device, }; static int __init sa1100_init(void)