aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-pxa/irq.c
diff options
context:
space:
mode:
authorHaojian Zhuang <haojian.zhuang@marvell.com>2009-08-19 19:49:31 +0800
committerEric Miao <eric.y.miao@gmail.com>2009-09-10 18:49:26 +0800
commitd2c37068429b29d6549cf3486fc84b836689e122 (patch)
tree5c5460cd095a1bb01d5a92ecce850a127c38e2ed /arch/arm/mach-pxa/irq.c
parent6ba39282bb3ee486a142ee3fd61196d329622ed9 (diff)
downloadkernel_samsung_smdk4412-d2c37068429b29d6549cf3486fc84b836689e122.zip
kernel_samsung_smdk4412-d2c37068429b29d6549cf3486fc84b836689e122.tar.gz
kernel_samsung_smdk4412-d2c37068429b29d6549cf3486fc84b836689e122.tar.bz2
[ARM] pxa: initialize default interrupt priority and use ICHP for IRQ handling
Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
Diffstat (limited to 'arch/arm/mach-pxa/irq.c')
-rw-r--r--arch/arm/mach-pxa/irq.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/arm/mach-pxa/irq.c b/arch/arm/mach-pxa/irq.c
index f6e0300..d694ce2 100644
--- a/arch/arm/mach-pxa/irq.c
+++ b/arch/arm/mach-pxa/irq.c
@@ -120,7 +120,7 @@ static void __init pxa_init_low_gpio_irq(set_wake_t fn)
void __init pxa_init_irq(int irq_nr, set_wake_t fn)
{
- int irq;
+ int irq, i;
pxa_internal_irq_nr = irq_nr;
@@ -129,6 +129,12 @@ void __init pxa_init_irq(int irq_nr, set_wake_t fn)
_ICLR(irq) = 0; /* all IRQs are IRQ, not FIQ */
}
+ /* initialize interrupt priority */
+ if (cpu_is_pxa27x() || cpu_is_pxa3xx()) {
+ for (i = 0; i < irq_nr; i++)
+ IPR(i) = i | (1 << 31);
+ }
+
/* only unmasked interrupts kick us out of idle */
ICCR = 1;