[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-arm-kernel
Subject:    [RFC][PATCH 2/7] unify the PXA IRQ numbering and move specific code
From:       "Eric Miao" <eric.y.miao () gmail ! com>
Date:       2007-05-30 5:17:52
Message-ID: f17812d70705292217r28481caanf0cf643e4f750d69 () mail ! gmail ! com
[Download RAW message or body]

>From f87b238890844fb0f40ca3d2f0120a87010b022c Mon Sep 17 00:00:00 2001
From: eric miao <eric.miao@marvell.com>
Date: Wed, 30 May 2007 08:18:52 +0800
Subject: [PATCH] [ARM][PXA] move low IRQ initialization code to
pxa_init_irq_low()

---
 arch/arm/mach-pxa/irq.c |   36 +++++++++++++++++++++---------------
 1 files changed, 21 insertions(+), 15 deletions(-)

diff --git a/arch/arm/mach-pxa/irq.c b/arch/arm/mach-pxa/irq.c
index 844d3de..42b2da2 100644
--- a/arch/arm/mach-pxa/irq.c
+++ b/arch/arm/mach-pxa/irq.c
@@ -67,6 +67,26 @@ static struct irq_chip pxa_internal_chip_low = {
 	.set_wake	= pxa_set_wake,
 };

+void __init pxa_init_irq_low(void)
+{
+	int irq;
+
+	/* disable all IRQs */
+	ICMR = 0;
+
+	/* all IRQs are IRQ, not FIQ */
+	ICLR = 0;
+
+	/* only unmasked interrupts kick us out of idle */
+	ICCR = 1;
+
+	for (irq = PXA_IRQ(0); irq <= PXA_IRQ(31); irq++) {
+		set_irq_chip(irq, &pxa_internal_chip_low);
+		set_irq_handler(irq, handle_level_irq);
+		set_irq_flags(irq, IRQF_VALID);
+	}
+}
+
 #ifdef CONFIG_PXA27x

 /*
@@ -331,12 +351,6 @@ void __init pxa_init_irq(void)
 {
 	int irq;

-	/* disable all IRQs */
-	ICMR = 0;
-
-	/* all IRQs are IRQ, not FIQ */
-	ICLR = 0;
-
 	/* clear all GPIO edge detects */
 	GFER0 = 0;
 	GFER1 = 0;
@@ -355,18 +369,10 @@ void __init pxa_init_irq(void)
 	GEDR3 = GEDR3;
 #endif

-	/* only unmasked interrupts kick us out of idle */
-	ICCR = 1;
-
 	/* GPIO 0 and 1 must have their mask bit always set */
 	GPIO_IRQ_mask[0] = 3;

-	for (irq = PXA_IRQ(0); irq <= PXA_IRQ(31); irq++) {
-		set_irq_chip(irq, &pxa_internal_chip_low);
-		set_irq_handler(irq, handle_level_irq);
-		set_irq_flags(irq, IRQF_VALID);
-	}
-
+	pxa_init_irq_low();
 #ifdef CONFIG_PXA27x
 	pxa_init_irq_high();
 #endif
-- 
1.5.0.5

-------------------------------------------------------------------
List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel
FAQ:        http://www.arm.linux.org.uk/mailinglists/faq.php
Etiquette:  http://www.arm.linux.org.uk/mailinglists/etiquette.php
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic