Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7931d92f authored by Russell King's avatar Russell King
Browse files

ARM: sa11x0: add SA-11x0 DMA device



Add sa11x0 DMA platform device and resources to the list of
generic platform devices for SA11x0 machines.

Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 6365bead
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/delay.h>
#include <linux/dma-mapping.h>
#include <linux/pm.h>
#include <linux/cpufreq.h>
#include <linux/ioport.h>
@@ -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)