aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpio-timberdale.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpio/gpio-timberdale.c')
-rw-r--r--drivers/gpio/gpio-timberdale.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/gpio/gpio-timberdale.c b/drivers/gpio/gpio-timberdale.c
index e8f97e03c9bb..ac53ff0a8086 100644
--- a/drivers/gpio/gpio-timberdale.c
+++ b/drivers/gpio/gpio-timberdale.c
@@ -194,11 +194,12 @@ out:
194 194
195static void timbgpio_irq(unsigned int irq, struct irq_desc *desc) 195static void timbgpio_irq(unsigned int irq, struct irq_desc *desc)
196{ 196{
197 struct timbgpio *tgpio = irq_get_handler_data(irq); 197 struct timbgpio *tgpio = irq_desc_get_handler_data(desc);
198 struct irq_data *data = irq_desc_get_irq_data(desc);
198 unsigned long ipr; 199 unsigned long ipr;
199 int offset; 200 int offset;
200 201
201 desc->irq_data.chip->irq_ack(irq_get_irq_data(irq)); 202 data->chip->irq_ack(data);
202 ipr = ioread32(tgpio->membase + TGPIO_IPR); 203 ipr = ioread32(tgpio->membase + TGPIO_IPR);
203 iowrite32(ipr, tgpio->membase + TGPIO_ICR); 204 iowrite32(ipr, tgpio->membase + TGPIO_ICR);
204 205
@@ -299,8 +300,7 @@ static int timbgpio_probe(struct platform_device *pdev)
299#endif 300#endif
300 } 301 }
301 302
302 irq_set_handler_data(irq, tgpio); 303 irq_set_chained_handler_and_data(irq, timbgpio_irq, tgpio);
303 irq_set_chained_handler(irq, timbgpio_irq);
304 304
305 return 0; 305 return 0;
306} 306}