aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/osl.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi/osl.c')
-rw-r--r--drivers/acpi/osl.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
index 0c41db3075a5..3b8aef3aefe5 100644
--- a/drivers/acpi/osl.c
+++ b/drivers/acpi/osl.c
@@ -337,7 +337,15 @@ acpi_os_table_override(struct acpi_table_header * existing_table,
337 337
338static irqreturn_t acpi_irq(int irq, void *dev_id) 338static irqreturn_t acpi_irq(int irq, void *dev_id)
339{ 339{
340 return (*acpi_irq_handler) (acpi_irq_context) ? IRQ_HANDLED : IRQ_NONE; 340 u32 handled;
341
342 handled = (*acpi_irq_handler) (acpi_irq_context);
343
344 if (handled) {
345 acpi_irq_handled++;
346 return IRQ_HANDLED;
347 } else
348 return IRQ_NONE;
341} 349}
342 350
343acpi_status 351acpi_status
@@ -346,6 +354,8 @@ acpi_os_install_interrupt_handler(u32 gsi, acpi_osd_handler handler,
346{ 354{
347 unsigned int irq; 355 unsigned int irq;
348 356
357 acpi_irq_stats_init();
358
349 /* 359 /*
350 * Ignore the GSI from the core, and use the value in our copy of the 360 * Ignore the GSI from the core, and use the value in our copy of the
351 * FADT. It may not be the same if an interrupt source override exists 361 * FADT. It may not be the same if an interrupt source override exists