aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-iop33x/irq.c
diff options
context:
space:
mode:
authorGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
committerGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
commitc71c03bda1e86c9d5198c5d83f712e695c4f2a1e (patch)
treeecb166cb3e2b7e2adb3b5e292245fefd23381ac8 /arch/arm/mach-iop33x/irq.c
parentea53c912f8a86a8567697115b6a0d8152beee5c8 (diff)
parent6a00f206debf8a5c8899055726ad127dbeeed098 (diff)
Merge branch 'mpi-master' into wip-k-fmlpwip-k-fmlp
Conflicts: litmus/sched_cedf.c
Diffstat (limited to 'arch/arm/mach-iop33x/irq.c')
-rw-r--r--arch/arm/mach-iop33x/irq.c37
1 files changed, 19 insertions, 18 deletions
diff --git a/arch/arm/mach-iop33x/irq.c b/arch/arm/mach-iop33x/irq.c
index abb4ea2ed4fd..f7f5d3e451c7 100644
--- a/arch/arm/mach-iop33x/irq.c
+++ b/arch/arm/mach-iop33x/irq.c
@@ -53,45 +53,45 @@ static void intsize_write(u32 val)
53} 53}
54 54
55static void 55static void
56iop33x_irq_mask1 (unsigned int irq) 56iop33x_irq_mask1 (struct irq_data *d)
57{ 57{
58 iop33x_mask0 &= ~(1 << irq); 58 iop33x_mask0 &= ~(1 << d->irq);
59 intctl0_write(iop33x_mask0); 59 intctl0_write(iop33x_mask0);
60} 60}
61 61
62static void 62static void
63iop33x_irq_mask2 (unsigned int irq) 63iop33x_irq_mask2 (struct irq_data *d)
64{ 64{
65 iop33x_mask1 &= ~(1 << (irq - 32)); 65 iop33x_mask1 &= ~(1 << (d->irq - 32));
66 intctl1_write(iop33x_mask1); 66 intctl1_write(iop33x_mask1);
67} 67}
68 68
69static void 69static void
70iop33x_irq_unmask1(unsigned int irq) 70iop33x_irq_unmask1(struct irq_data *d)
71{ 71{
72 iop33x_mask0 |= 1 << irq; 72 iop33x_mask0 |= 1 << d->irq;
73 intctl0_write(iop33x_mask0); 73 intctl0_write(iop33x_mask0);
74} 74}
75 75
76static void 76static void
77iop33x_irq_unmask2(unsigned int irq) 77iop33x_irq_unmask2(struct irq_data *d)
78{ 78{
79 iop33x_mask1 |= (1 << (irq - 32)); 79 iop33x_mask1 |= (1 << (d->irq - 32));
80 intctl1_write(iop33x_mask1); 80 intctl1_write(iop33x_mask1);
81} 81}
82 82
83struct irq_chip iop33x_irqchip1 = { 83struct irq_chip iop33x_irqchip1 = {
84 .name = "IOP33x-1", 84 .name = "IOP33x-1",
85 .ack = iop33x_irq_mask1, 85 .irq_ack = iop33x_irq_mask1,
86 .mask = iop33x_irq_mask1, 86 .irq_mask = iop33x_irq_mask1,
87 .unmask = iop33x_irq_unmask1, 87 .irq_unmask = iop33x_irq_unmask1,
88}; 88};
89 89
90struct irq_chip iop33x_irqchip2 = { 90struct irq_chip iop33x_irqchip2 = {
91 .name = "IOP33x-2", 91 .name = "IOP33x-2",
92 .ack = iop33x_irq_mask2, 92 .irq_ack = iop33x_irq_mask2,
93 .mask = iop33x_irq_mask2, 93 .irq_mask = iop33x_irq_mask2,
94 .unmask = iop33x_irq_unmask2, 94 .irq_unmask = iop33x_irq_unmask2,
95}; 95};
96 96
97void __init iop33x_init_irq(void) 97void __init iop33x_init_irq(void)
@@ -110,8 +110,9 @@ void __init iop33x_init_irq(void)
110 *IOP3XX_PCIIRSR = 0x0f; 110 *IOP3XX_PCIIRSR = 0x0f;
111 111
112 for (i = 0; i < NR_IRQS; i++) { 112 for (i = 0; i < NR_IRQS; i++) {
113 set_irq_chip(i, (i < 32) ? &iop33x_irqchip1 : &iop33x_irqchip2); 113 irq_set_chip_and_handler(i,
114 set_irq_handler(i, handle_level_irq); 114 (i < 32) ? &iop33x_irqchip1 : &iop33x_irqchip2,
115 handle_level_irq);
115 set_irq_flags(i, IRQF_VALID | IRQF_PROBE); 116 set_irq_flags(i, IRQF_VALID | IRQF_PROBE);
116 } 117 }
117} 118}