Bläddra i källkod

[ARM] pxa: allow DMA controller IRQ being specified

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao 16 år sedan
förälder
incheckning
fef1f99a0c

+ 2 - 2
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);

+ 1 - 1
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,

+ 1 - 1
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();

+ 1 - 1
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();

+ 1 - 1
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();