diff options
author | Axel Lin <axel.lin@ingics.com> | 2016-03-17 07:01:43 +0300 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2016-03-31 11:22:53 +0300 |
commit | c6cc75fec020eda0df04aff21f6cd6f4bfc1eea5 (patch) | |
tree | e0fb9c37ec0aa1472786f64f47e1fca0f07935cd /drivers/gpio/gpio-xgene-sb.c | |
parent | 63cc787e71ae12976b2116f09677d1f2805df83e (diff) | |
download | linux-c6cc75fec020eda0df04aff21f6cd6f4bfc1eea5.tar.xz |
gpio: xgene-sb: Use irq_domain_free_irqs_common()
Current code calls irq_domain_alloc_irqs_parent() in .alloc,
so it should call irq_domain_free_irqs_parent() accordingly in .free.
Fix it by switching to use irq_domain_free_irqs_common() instead.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpio-xgene-sb.c')
-rw-r--r-- | drivers/gpio/gpio-xgene-sb.c | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/drivers/gpio/gpio-xgene-sb.c b/drivers/gpio/gpio-xgene-sb.c index 31cbcb84cfaf..033258634b8c 100644 --- a/drivers/gpio/gpio-xgene-sb.c +++ b/drivers/gpio/gpio-xgene-sb.c @@ -216,23 +216,10 @@ static int xgene_gpio_sb_domain_alloc(struct irq_domain *domain, &parent_fwspec); } -static void xgene_gpio_sb_domain_free(struct irq_domain *domain, - unsigned int virq, - unsigned int nr_irqs) -{ - struct irq_data *d; - unsigned int i; - - for (i = 0; i < nr_irqs; i++) { - d = irq_domain_get_irq_data(domain, virq + i); - irq_domain_reset_irq_data(d); - } -} - static const struct irq_domain_ops xgene_gpio_sb_domain_ops = { .translate = xgene_gpio_sb_domain_translate, .alloc = xgene_gpio_sb_domain_alloc, - .free = xgene_gpio_sb_domain_free, + .free = irq_domain_free_irqs_common, .activate = xgene_gpio_sb_domain_activate, .deactivate = xgene_gpio_sb_domain_deactivate, }; |