summaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpiolib-acpi.c
diff options
context:
space:
mode:
authorMathias Nyman <mathias.nyman@linux.intel.com>2013-02-04 11:32:22 +0200
committerLinus Walleij <linus.walleij@linaro.org>2013-02-04 21:41:47 +0100
commit1107ca104f0331627f6446bfefa2d4b0e673db18 (patch)
treec965296f42b8428b8b137f2c2f379f2abadba6ee /drivers/gpio/gpiolib-acpi.c
parentde0ccf788147440eee2383c74408080f3ff0a43b (diff)
gpiolib-acpi: Fix error checks in interrupt requesting
Print error message if requesting an interrupt fails. Use int instead of unsigned for interrupts in case of error values Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpiolib-acpi.c')
-rw-r--r--drivers/gpio/gpiolib-acpi.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c
index 54ce2269ed2..a063eb04b6c 100644
--- a/drivers/gpio/gpiolib-acpi.c
+++ b/drivers/gpio/gpiolib-acpi.c
@@ -83,7 +83,8 @@ void acpi_gpiochip_request_interrupts(struct gpio_chip *chip)
struct acpi_resource *res;
acpi_handle handle, ev_handle;
acpi_status status;
- unsigned int pin, irq;
+ unsigned int pin;
+ int irq, ret;
char ev_name[5];
if (!chip->dev || !chip->to_irq)
@@ -126,11 +127,15 @@ void acpi_gpiochip_request_interrupts(struct gpio_chip *chip)
continue;
/* Assume BIOS sets the triggering, so no flags */
- devm_request_threaded_irq(chip->dev, irq, NULL,
+ ret = devm_request_threaded_irq(chip->dev, irq, NULL,
acpi_gpio_irq_handler,
0,
"GPIO-signaled-ACPI-event",
ev_handle);
+ if (ret)
+ dev_err(chip->dev,
+ "Failed to request IRQ %d ACPI event handler\n",
+ irq);
}
}
EXPORT_SYMBOL(acpi_gpiochip_request_interrupts);