diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2012-11-12 12:08:12 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2012-11-12 12:08:12 +0100 |
commit | 53640f41b97792b0889bb70f26f99c06743162a1 (patch) | |
tree | 3a0358208775f29f9e319b506ce849c5dbdc1a06 /arch/arm/mach-imx/devices/platform-imx-dma.c | |
parent | 77b67063bb6bce6d475e910d3b886a606d0d91f7 (diff) | |
parent | 68b25325a7fd290b5e472bba0df9cbe8c1a81d8f (diff) | |
download | blackbird-op-linux-53640f41b97792b0889bb70f26f99c06743162a1.tar.gz blackbird-op-linux-53640f41b97792b0889bb70f26f99c06743162a1.zip |
Merge remote-tracking branch 'arm-soc/imx/multiplatform' into imx25-dt
Diffstat (limited to 'arch/arm/mach-imx/devices/platform-imx-dma.c')
-rw-r--r-- | arch/arm/mach-imx/devices/platform-imx-dma.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/devices/platform-imx-dma.c b/arch/arm/mach-imx/devices/platform-imx-dma.c new file mode 100644 index 000000000000..ccdb5dc4ddbd --- /dev/null +++ b/arch/arm/mach-imx/devices/platform-imx-dma.c @@ -0,0 +1,51 @@ +/* + * Copyright (C) 2010 Pengutronix + * Uwe Kleine-Koenig <u.kleine-koenig@pengutronix.de> + * + * This program is free software; you can redistribute it and/or modify it under + * the terms of the GNU General Public License version 2 as published by the + * Free Software Foundation. + */ +#include "devices-common.h" + +struct platform_device __init __maybe_unused *imx_add_imx_dma(char *name, + resource_size_t iobase, int irq, int irq_err) +{ + struct resource res[] = { + { + .start = iobase, + .end = iobase + SZ_4K - 1, + .flags = IORESOURCE_MEM, + }, { + .start = irq, + .end = irq, + .flags = IORESOURCE_IRQ, + }, { + .start = irq_err, + .end = irq_err, + .flags = IORESOURCE_IRQ, + }, + }; + + return platform_device_register_resndata(&mxc_ahb_bus, + name, -1, res, ARRAY_SIZE(res), NULL, 0); +} + +struct platform_device __init __maybe_unused *imx_add_imx_sdma(char *name, + resource_size_t iobase, int irq, struct sdma_platform_data *pdata) +{ + struct resource res[] = { + { + .start = iobase, + .end = iobase + SZ_16K - 1, + .flags = IORESOURCE_MEM, + }, { + .start = irq, + .end = irq, + .flags = IORESOURCE_IRQ, + }, + }; + + return platform_device_register_resndata(&mxc_ahb_bus, name, + -1, res, ARRAY_SIZE(res), pdata, sizeof(*pdata)); +} |