BCM270x: Add memory and irq resources to dmaengine device and DT

Prepare for merging of the legacy DMA API arch driver dma.c
with bcm2708-dmaengine by adding memory and irq resources both
to platform file device and Device Tree node.
Don't use BCM_DMAMAN_DRIVER_NAME so we don't have to include mach/dma.h

Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
This commit is contained in:
Noralf Trønnes
2015-04-28 19:24:30 +02:00
committed by popcornmix
parent d6a23ca646
commit e77bb5f7af
3 changed files with 142 additions and 4 deletions

View File

@@ -10,7 +10,23 @@
dma: dma@7e007000 {
compatible = "brcm,bcm2835-dma";
reg = <0x7e007000 0xf00>;
interrupts = <1 16>,
<1 17>,
<1 18>,
<1 19>,
<1 20>,
<1 21>,
<1 22>,
<1 23>,
<1 24>,
<1 25>,
<1 26>,
<1 27>,
<1 28>;
#dma-cells = <1>;
brcm,dma-channel-mask = <0x7f35>;
};
intc: interrupt-controller {

View File

@@ -55,7 +55,6 @@
#include <asm/mach/map.h>
#include <mach/timex.h>
#include <mach/dma.h>
#include <mach/vcio.h>
#include <mach/system.h>
@@ -257,15 +256,77 @@ static struct resource bcm2708_dmaman_resources[] = {
};
static struct platform_device bcm2708_dmaman_device = {
.name = BCM_DMAMAN_DRIVER_NAME,
.name = "bcm2708_dma",
.id = 0, /* first bcm2708_dma */
.resource = bcm2708_dmaman_resources,
.num_resources = ARRAY_SIZE(bcm2708_dmaman_resources),
};
static struct resource bcm2708_dmaengine_resources[] = {
{
.start = DMA_BASE,
.end = DMA_BASE + SZ_4K - 1,
.flags = IORESOURCE_MEM,
}, {
.start = IRQ_DMA0,
.end = IRQ_DMA0,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA1,
.end = IRQ_DMA1,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA2,
.end = IRQ_DMA2,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA3,
.end = IRQ_DMA3,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA4,
.end = IRQ_DMA4,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA5,
.end = IRQ_DMA5,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA6,
.end = IRQ_DMA6,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA7,
.end = IRQ_DMA7,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA8,
.end = IRQ_DMA8,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA9,
.end = IRQ_DMA9,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA10,
.end = IRQ_DMA10,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA11,
.end = IRQ_DMA11,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA12,
.end = IRQ_DMA12,
.flags = IORESOURCE_IRQ,
}
};
static struct platform_device bcm2708_dmaengine_device = {
.name = "bcm2708-dmaengine",
.id = -1,
.resource = bcm2708_dmaengine_resources,
.num_resources = ARRAY_SIZE(bcm2708_dmaengine_resources),
};
#if defined(CONFIG_W1_MASTER_GPIO) || defined(CONFIG_W1_MASTER_GPIO_MODULE)

View File

@@ -56,7 +56,6 @@
#include <asm/mach/map.h>
#include <mach/timex.h>
#include <mach/dma.h>
#include <mach/vcio.h>
#include <mach/system.h>
@@ -267,15 +266,77 @@ static struct resource bcm2708_dmaman_resources[] = {
};
static struct platform_device bcm2708_dmaman_device = {
.name = BCM_DMAMAN_DRIVER_NAME,
.name = "bcm2708_dma",
.id = 0, /* first bcm2708_dma */
.resource = bcm2708_dmaman_resources,
.num_resources = ARRAY_SIZE(bcm2708_dmaman_resources),
};
static struct resource bcm2708_dmaengine_resources[] = {
{
.start = DMA_BASE,
.end = DMA_BASE + SZ_4K - 1,
.flags = IORESOURCE_MEM,
}, {
.start = IRQ_DMA0,
.end = IRQ_DMA0,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA1,
.end = IRQ_DMA1,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA2,
.end = IRQ_DMA2,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA3,
.end = IRQ_DMA3,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA4,
.end = IRQ_DMA4,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA5,
.end = IRQ_DMA5,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA6,
.end = IRQ_DMA6,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA7,
.end = IRQ_DMA7,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA8,
.end = IRQ_DMA8,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA9,
.end = IRQ_DMA9,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA10,
.end = IRQ_DMA10,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA11,
.end = IRQ_DMA11,
.flags = IORESOURCE_IRQ,
}, {
.start = IRQ_DMA12,
.end = IRQ_DMA12,
.flags = IORESOURCE_IRQ,
}
};
static struct platform_device bcm2708_dmaengine_device = {
.name = "bcm2708-dmaengine",
.id = -1,
.resource = bcm2708_dmaengine_resources,
.num_resources = ARRAY_SIZE(bcm2708_dmaengine_resources),
};
#if defined(CONFIG_W1_MASTER_GPIO) || defined(CONFIG_W1_MASTER_GPIO_MODULE)