From: Wei Yongjun Date: Fri, 14 Sep 2012 02:36:59 +0000 (+0800) Subject: gpio: pxa: using for_each_set_bit to simplify the code X-Git-Tag: v3.7-rc1~143^2~5 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=d724f1c9c3c7dee420b8d778ee53207ef3c17120;p=~emulex%2Finfiniband.git gpio: pxa: using for_each_set_bit to simplify the code Using for_each_set_bit() to simplify the code. spatch with a semantic match is used to found this. (http://coccinelle.lip6.fr/) Signed-off-by: Wei Yongjun Acked-by: Haojian Zhuang Acked-by: Eric Miao Signed-off-by: Linus Walleij --- diff --git a/drivers/gpio/gpio-pxa.c b/drivers/gpio/gpio-pxa.c index 528de0fa0c9..bf9371f9d46 100644 --- a/drivers/gpio/gpio-pxa.c +++ b/drivers/gpio/gpio-pxa.c @@ -413,12 +413,10 @@ static void pxa_gpio_demux_handler(unsigned int irq, struct irq_desc *desc) gedr = gedr & c->irq_mask; writel_relaxed(gedr, c->regbase + GEDR_OFFSET); - n = find_first_bit(&gedr, BITS_PER_LONG); - while (n < BITS_PER_LONG) { + for_each_set_bit(n, &gedr, BITS_PER_LONG) { loop = 1; generic_handle_irq(gpio_to_irq(gpio_base + n)); - n = find_next_bit(&gedr, BITS_PER_LONG, n + 1); } } } while (loop);