diff options
author | Eric Miao <eric.miao@marvell.com> | 2009-01-02 16:26:33 +0800 |
---|---|---|
committer | Eric Miao <eric.miao@marvell.com> | 2009-03-09 21:22:36 +0800 |
commit | fef1f99a0c2928893c074bf3eff27efd36a4532a (patch) | |
tree | 9827b349bd741a483fb40eed10a6f382a8b09eb3 | |
parent | 51c62982a33d9086fd8876293411d28a5f97247a (diff) | |
download | linux-stable-fef1f99a0c2928893c074bf3eff27efd36a4532a.tar.gz linux-stable-fef1f99a0c2928893c074bf3eff27efd36a4532a.tar.bz2 linux-stable-fef1f99a0c2928893c074bf3eff27efd36a4532a.zip |
[ARM] pxa: allow DMA controller IRQ being specified
Signed-off-by: Eric Miao <eric.miao@marvell.com>
-rw-r--r-- | arch/arm/mach-pxa/dma.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-pxa/include/mach/dma.h | 2 | ||||
-rw-r--r-- | arch/arm/mach-pxa/pxa25x.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-pxa/pxa27x.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-pxa/pxa3xx.c | 2 |
5 files changed, 6 insertions, 6 deletions
diff --git a/arch/arm/mach-pxa/dma.c b/arch/arm/mach-pxa/dma.c index 7de17fc5d54b..4613bf1fe43c 100644 --- a/arch/arm/mach-pxa/dma.c +++ b/arch/arm/mach-pxa/dma.c @@ -113,7 +113,7 @@ static irqreturn_t dma_irq_handler(int irq, void *dev_id) return IRQ_HANDLED; } -int __init pxa_init_dma(int num_ch) +int __init pxa_init_dma(int irq, int num_ch) { int i, ret; @@ -131,7 +131,7 @@ int __init pxa_init_dma(int num_ch) dma_channels[i].prio = min((i & 0xf) >> 2, DMA_PRIO_LOW); } - ret = request_irq(IRQ_DMA, dma_irq_handler, IRQF_DISABLED, "DMA", NULL); + ret = request_irq(irq, dma_irq_handler, IRQF_DISABLED, "DMA", NULL); if (ret) { printk (KERN_CRIT "Wow! Can't register IRQ for DMA\n"); kfree(dma_channels); diff --git a/arch/arm/mach-pxa/include/mach/dma.h b/arch/arm/mach-pxa/include/mach/dma.h index 7804637a6df3..77607fe4bd65 100644 --- a/arch/arm/mach-pxa/include/mach/dma.h +++ b/arch/arm/mach-pxa/include/mach/dma.h @@ -34,7 +34,7 @@ typedef enum { * DMA registration */ -int __init pxa_init_dma(int num_ch); +int __init pxa_init_dma(int irq, int num_ch); int pxa_request_dma (char *name, pxa_dma_prio prio, diff --git a/arch/arm/mach-pxa/pxa25x.c b/arch/arm/mach-pxa/pxa25x.c index 823cd891def1..2332e2dc3504 100644 --- a/arch/arm/mach-pxa/pxa25x.c +++ b/arch/arm/mach-pxa/pxa25x.c @@ -353,7 +353,7 @@ static int __init pxa25x_init(void) clks_register(pxa25x_clkregs, ARRAY_SIZE(pxa25x_clkregs)); - if ((ret = pxa_init_dma(16))) + if ((ret = pxa_init_dma(IRQ_DMA, 16))) return ret; pxa25x_init_pm(); diff --git a/arch/arm/mach-pxa/pxa27x.c b/arch/arm/mach-pxa/pxa27x.c index 0807794442ee..c8b469bbcf3b 100644 --- a/arch/arm/mach-pxa/pxa27x.c +++ b/arch/arm/mach-pxa/pxa27x.c @@ -379,7 +379,7 @@ static int __init pxa27x_init(void) clks_register(pxa27x_clkregs, ARRAY_SIZE(pxa27x_clkregs)); - if ((ret = pxa_init_dma(32))) + if ((ret = pxa_init_dma(IRQ_DMA, 32))) return ret; pxa27x_init_pm(); diff --git a/arch/arm/mach-pxa/pxa3xx.c b/arch/arm/mach-pxa/pxa3xx.c index 490893824e78..e626b79cbee4 100644 --- a/arch/arm/mach-pxa/pxa3xx.c +++ b/arch/arm/mach-pxa/pxa3xx.c @@ -594,7 +594,7 @@ static int __init pxa3xx_init(void) clks_register(pxa3xx_clkregs, ARRAY_SIZE(pxa3xx_clkregs)); - if ((ret = pxa_init_dma(32))) + if ((ret = pxa_init_dma(IRQ_DMA, 32))) return ret; pxa3xx_init_pm(); |