aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBartosz Golaszewski <brgl@bgdev.pl>2017-08-09 08:25:05 -0400
committerLinus Walleij <linus.walleij@linaro.org>2017-08-20 18:08:52 -0400
commite0fc5a1b8ea3040936a89ae2b85321e06a78b3af (patch)
tree9c5ab766f28daf465e4a2114a5708021c64e0b3d
parent469d59430f15e1649771ba0e816dd6c9afb39fcc (diff)
gpio: pch: use devres for irq generic chip
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>
-rw-r--r--drivers/gpio/gpio-pch.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/gpio/gpio-pch.c b/drivers/gpio/gpio-pch.c
index f6600f8ada52..68c6d0c5a6d1 100644
--- a/drivers/gpio/gpio-pch.c
+++ b/drivers/gpio/gpio-pch.c
@@ -337,9 +337,10 @@ static int pch_gpio_alloc_generic_chip(struct pch_gpio *chip,
337{ 337{
338 struct irq_chip_generic *gc; 338 struct irq_chip_generic *gc;
339 struct irq_chip_type *ct; 339 struct irq_chip_type *ct;
340 int rv;
340 341
341 gc = irq_alloc_generic_chip("pch_gpio", 1, irq_start, chip->base, 342 gc = devm_irq_alloc_generic_chip(chip->dev, "pch_gpio", 1, irq_start,
342 handle_simple_irq); 343 chip->base, handle_simple_irq);
343 if (!gc) 344 if (!gc)
344 return -ENOMEM; 345 return -ENOMEM;
345 346
@@ -351,10 +352,11 @@ static int pch_gpio_alloc_generic_chip(struct pch_gpio *chip,
351 ct->chip.irq_unmask = pch_irq_unmask; 352 ct->chip.irq_unmask = pch_irq_unmask;
352 ct->chip.irq_set_type = pch_irq_type; 353 ct->chip.irq_set_type = pch_irq_type;
353 354
354 irq_setup_generic_chip(gc, IRQ_MSK(num), IRQ_GC_INIT_MASK_CACHE, 355 rv = devm_irq_setup_generic_chip(chip->dev, gc, IRQ_MSK(num),
355 IRQ_NOREQUEST | IRQ_NOPROBE, 0); 356 IRQ_GC_INIT_MASK_CACHE,
357 IRQ_NOREQUEST | IRQ_NOPROBE, 0);
356 358
357 return 0; 359 return rv;
358} 360}
359 361
360static int pch_gpio_probe(struct pci_dev *pdev, 362static int pch_gpio_probe(struct pci_dev *pdev,