aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@ingics.com>2016-03-20 08:44:05 -0400
committerThomas Gleixner <tglx@linutronix.de>2016-03-20 15:08:28 -0400
commit46f920d8a970cf102e18f25814a4ff4729ad8537 (patch)
treea7d7fb9abff1d6b01eeb6ad254c7fdcdf1807ae4
parent710d60cbf1b312a8075a2158cbfbbd9c66132dcc (diff)
irqchip/tegra: Switch to 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 of the open-coded private implementation. Signed-off-by: Axel Lin <axel.lin@ingics.com> Cc: Alexandre Courbot <gnurou@gmail.com> Cc: Jason Cooper <jason@lakedaemon.net> Cc: Stephen Warren <swarren@wwwdotorg.org> Cc: Marc Zyngier <marc.zyngier@arm.com> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: linux-tegra@vger.kernel.org Link: http://lkml.kernel.org/r/1458477845.28679.1.camel@ingics.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--drivers/irqchip/irq-tegra.c14
1 files changed, 1 insertions, 13 deletions
diff --git a/drivers/irqchip/irq-tegra.c b/drivers/irqchip/irq-tegra.c
index 121ec301372e..50be9639e27e 100644
--- a/drivers/irqchip/irq-tegra.c
+++ b/drivers/irqchip/irq-tegra.c
@@ -275,22 +275,10 @@ static int tegra_ictlr_domain_alloc(struct irq_domain *domain,
275 &parent_fwspec); 275 &parent_fwspec);
276} 276}
277 277
278static void tegra_ictlr_domain_free(struct irq_domain *domain,
279 unsigned int virq,
280 unsigned int nr_irqs)
281{
282 unsigned int i;
283
284 for (i = 0; i < nr_irqs; i++) {
285 struct irq_data *d = irq_domain_get_irq_data(domain, virq + i);
286 irq_domain_reset_irq_data(d);
287 }
288}
289
290static const struct irq_domain_ops tegra_ictlr_domain_ops = { 278static const struct irq_domain_ops tegra_ictlr_domain_ops = {
291 .translate = tegra_ictlr_domain_translate, 279 .translate = tegra_ictlr_domain_translate,
292 .alloc = tegra_ictlr_domain_alloc, 280 .alloc = tegra_ictlr_domain_alloc,
293 .free = tegra_ictlr_domain_free, 281 .free = irq_domain_free_irqs_common,
294}; 282};
295 283
296static int __init tegra_ictlr_init(struct device_node *node, 284static int __init tegra_ictlr_init(struct device_node *node,