|
@@ -255,11 +255,13 @@ static int dwapb_irq_reqres(struct irq_data *d)
|
|
|
struct irq_chip_generic *igc = irq_data_get_irq_chip_data(d);
|
|
|
struct dwapb_gpio *gpio = igc->private;
|
|
|
struct gpio_chip *gc = &gpio->ports[0].gc;
|
|
|
+ int ret;
|
|
|
|
|
|
- if (gpiochip_lock_as_irq(gc, irqd_to_hwirq(d))) {
|
|
|
+ ret = gpiochip_lock_as_irq(gc, irqd_to_hwirq(d));
|
|
|
+ if (ret) {
|
|
|
dev_err(gpio->dev, "unable to lock HW IRQ %lu for IRQ\n",
|
|
|
irqd_to_hwirq(d));
|
|
|
- return -EINVAL;
|
|
|
+ return ret;
|
|
|
}
|
|
|
return 0;
|
|
|
}
|