On Wed, Sep 18, 2013 at 8:24 AM, Thierry Reding <thierry.reding@xxxxxxxxx> wrote: > The of_irq_to_resource() helper that is used to implement of_irq_count() > tries to resolve interrupts and in fact creates a mapping for resolved > interrupts. That's pretty heavy lifting for something that claims to > just return the number of interrupts requested by a given device node. > > Instead, use the more lightweight of_irq_map_one(), which, despite the > name, doesn't create an actual mapping. Perhaps a better name would be > of_irq_translate_one(). > > Signed-off-by: Thierry Reding <treding@xxxxxxxxxx> Acked-by: Rob Herring <rob.herring@xxxxxxxxxxx> > --- > drivers/of/irq.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/of/irq.c b/drivers/of/irq.c > index 1752988..5f44388 100644 > --- a/drivers/of/irq.c > +++ b/drivers/of/irq.c > @@ -368,9 +368,10 @@ EXPORT_SYMBOL_GPL(of_irq_to_resource); > */ > int of_irq_count(struct device_node *dev) > { > + struct of_irq irq; > int nr = 0; > > - while (of_irq_to_resource(dev, nr, NULL)) > + while (of_irq_map_one(dev, nr, &irq) == 0) > nr++; > > return nr; > -- > 1.8.4 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel