There is no need to check for 'pending' before loop over the
interrupts using 'for_each_set_bit' if nothing is set the
return values will be the same so just avoid this check avoiding
also one level intentation and improving readability.

Signed-off-by: Sergio Paracuellos <sergio.paracuel...@gmail.com>
---
 drivers/staging/mt7621-gpio/gpio-mt7621.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/drivers/staging/mt7621-gpio/gpio-mt7621.c 
b/drivers/staging/mt7621-gpio/gpio-mt7621.c
index 96dee10..698a95d 100644
--- a/drivers/staging/mt7621-gpio/gpio-mt7621.c
+++ b/drivers/staging/mt7621-gpio/gpio-mt7621.c
@@ -93,14 +93,12 @@ mediatek_gpio_irq_handler(int irq, void *data)
 
        pending = mtk_gpio_r32(rg, GPIO_REG_STAT);
 
-       if (pending) {
-               for_each_set_bit(bit, &pending, MTK_BANK_WIDTH) {
-                       u32 map = irq_find_mapping(gc->irq.domain, bit);
+       for_each_set_bit(bit, &pending, MTK_BANK_WIDTH) {
+               u32 map = irq_find_mapping(gc->irq.domain, bit);
 
-                       generic_handle_irq(map);
-                       mtk_gpio_w32(rg, GPIO_REG_STAT, BIT(bit));
-                       ret |= IRQ_HANDLED;
-               }
+               generic_handle_irq(map);
+               mtk_gpio_w32(rg, GPIO_REG_STAT, BIT(bit));
+               ret |= IRQ_HANDLED;
        }
 
        return ret;
-- 
2.7.4

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to