aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-imx/irq.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-imx/irq.c')
-rw-r--r--arch/arm/mach-imx/irq.c24
1 files changed, 10 insertions, 14 deletions
diff --git a/arch/arm/mach-imx/irq.c b/arch/arm/mach-imx/irq.c
index 2688bd82c2a2..368b13b058ab 100644
--- a/arch/arm/mach-imx/irq.c
+++ b/arch/arm/mach-imx/irq.c
@@ -146,13 +146,13 @@ imx_gpio_unmask_irq(unsigned int irq)
146 146
147static void 147static void
148imx_gpio_handler(unsigned int mask, unsigned int irq, 148imx_gpio_handler(unsigned int mask, unsigned int irq,
149 struct irqdesc *desc, struct pt_regs *regs) 149 struct irqdesc *desc)
150{ 150{
151 desc = irq_desc + irq; 151 desc = irq_desc + irq;
152 while (mask) { 152 while (mask) {
153 if (mask & 1) { 153 if (mask & 1) {
154 DEBUG_IRQ("handling irq %d\n", irq); 154 DEBUG_IRQ("handling irq %d\n", irq);
155 desc_handle_irq(irq, desc, regs); 155 desc_handle_irq(irq, desc);
156 } 156 }
157 irq++; 157 irq++;
158 desc++; 158 desc++;
@@ -161,47 +161,43 @@ imx_gpio_handler(unsigned int mask, unsigned int irq,
161} 161}
162 162
163static void 163static void
164imx_gpioa_demux_handler(unsigned int irq_unused, struct irqdesc *desc, 164imx_gpioa_demux_handler(unsigned int irq_unused, struct irqdesc *desc)
165 struct pt_regs *regs)
166{ 165{
167 unsigned int mask, irq; 166 unsigned int mask, irq;
168 167
169 mask = ISR(0); 168 mask = ISR(0);
170 irq = IRQ_GPIOA(0); 169 irq = IRQ_GPIOA(0);
171 imx_gpio_handler(mask, irq, desc, regs); 170 imx_gpio_handler(mask, irq, desc);
172} 171}
173 172
174static void 173static void
175imx_gpiob_demux_handler(unsigned int irq_unused, struct irqdesc *desc, 174imx_gpiob_demux_handler(unsigned int irq_unused, struct irqdesc *desc)
176 struct pt_regs *regs)
177{ 175{
178 unsigned int mask, irq; 176 unsigned int mask, irq;
179 177
180 mask = ISR(1); 178 mask = ISR(1);
181 irq = IRQ_GPIOB(0); 179 irq = IRQ_GPIOB(0);
182 imx_gpio_handler(mask, irq, desc, regs); 180 imx_gpio_handler(mask, irq, desc);
183} 181}
184 182
185static void 183static void
186imx_gpioc_demux_handler(unsigned int irq_unused, struct irqdesc *desc, 184imx_gpioc_demux_handler(unsigned int irq_unused, struct irqdesc *desc)
187 struct pt_regs *regs)
188{ 185{
189 unsigned int mask, irq; 186 unsigned int mask, irq;
190 187
191 mask = ISR(2); 188 mask = ISR(2);
192 irq = IRQ_GPIOC(0); 189 irq = IRQ_GPIOC(0);
193 imx_gpio_handler(mask, irq, desc, regs); 190 imx_gpio_handler(mask, irq, desc);
194} 191}
195 192
196static void 193static void
197imx_gpiod_demux_handler(unsigned int irq_unused, struct irqdesc *desc, 194imx_gpiod_demux_handler(unsigned int irq_unused, struct irqdesc *desc)
198 struct pt_regs *regs)
199{ 195{
200 unsigned int mask, irq; 196 unsigned int mask, irq;
201 197
202 mask = ISR(3); 198 mask = ISR(3);
203 irq = IRQ_GPIOD(0); 199 irq = IRQ_GPIOD(0);
204 imx_gpio_handler(mask, irq, desc, regs); 200 imx_gpio_handler(mask, irq, desc);
205} 201}
206 202
207static struct irq_chip imx_internal_chip = { 203static struct irq_chip imx_internal_chip = {