gpio: sta2x11: use devres for irq generic chip
authorBartosz Golaszewski <brgl@bgdev.pl>
Wed, 9 Aug 2017 12:25:03 +0000 (14:25 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Sun, 20 Aug 2017 22:06:04 +0000 (00:06 +0200)
Use resource managed variants of irq_alloc_generic_chip() and
irq_setup_generic_chip().

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpio-sta2x11.c

index 56beb31c03dba24f746df93ccd1d8aa3673513ad..407359da08f94b3de53e6084cd9431020321c885 100644 (file)
@@ -324,9 +324,11 @@ static int gsta_alloc_irq_chip(struct gsta_gpio *chip)
 {
        struct irq_chip_generic *gc;
        struct irq_chip_type *ct;
+       int rv;
 
-       gc = irq_alloc_generic_chip(KBUILD_MODNAME, 1, chip->irq_base,
-                                    chip->reg_base, handle_simple_irq);
+       gc = devm_irq_alloc_generic_chip(chip->dev, KBUILD_MODNAME, 1,
+                                        chip->irq_base,
+                                        chip->reg_base, handle_simple_irq);
        if (!gc)
                return -ENOMEM;
 
@@ -338,8 +340,11 @@ static int gsta_alloc_irq_chip(struct gsta_gpio *chip)
        ct->chip.irq_enable = gsta_irq_enable;
 
        /* FIXME: this makes at most 32 interrupts. Request 0 by now */
-       irq_setup_generic_chip(gc, 0 /* IRQ_MSK(GSTA_GPIO_PER_BLOCK) */, 0,
-                              IRQ_NOREQUEST | IRQ_NOPROBE, 0);
+       rv = devm_irq_setup_generic_chip(chip->dev, gc,
+                                        0 /* IRQ_MSK(GSTA_GPIO_PER_BLOCK) */,
+                                        0, IRQ_NOREQUEST | IRQ_NOPROBE, 0);
+       if (rv)
+               return rv;
 
        /* Set up all all 128 interrupts: code from setup_generic_chip */
        {