aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/platform/x86/intel_pmic_gpio.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/platform/x86/intel_pmic_gpio.c')
-rw-r--r--drivers/platform/x86/intel_pmic_gpio.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/platform/x86/intel_pmic_gpio.c b/drivers/platform/x86/intel_pmic_gpio.c
index e61db9dfebe..4efb2c6107b 100644
--- a/drivers/platform/x86/intel_pmic_gpio.c
+++ b/drivers/platform/x86/intel_pmic_gpio.c
@@ -244,7 +244,15 @@ static void pmic_irq_handler(unsigned irq, struct irq_desc *desc)
generic_handle_irq(pg->irq_base + gpio);
}
}
- desc->chip->eoi(irq);
+
+ if (desc->chip->irq_eoi)
+ desc->chip->irq_eoi(irq_get_irq_data(irq));
+#ifndef CONFIG_GENERIC_HARDIRQS_NO_DEPRECATED
+ else if (desc->chip->eoi)
+ desc->chip->eoi(irq);
+#endif
+ else
+ dev_warn(pg->chip.dev, "missing EOI handler for irq %d\n", irq);
}
static int __devinit platform_pmic_gpio_probe(struct platform_device *pdev)