pinctrl: mediatek: fix dual-edge code defect
[firefly-linux-kernel-4.4.55.git] / drivers / pinctrl / mediatek / pinctrl-mtk-common.c
index 3d8019eb3d8476686584371e822411cb631552cb..181b35879ebd7d3f755d942cba18a1def04eb751 100644 (file)
@@ -1191,9 +1191,10 @@ static void mtk_eint_irq_handler(struct irq_desc *desc)
        const struct mtk_desc_pin *pin;
 
        chained_irq_enter(chip, desc);
-       for (eint_num = 0; eint_num < pctl->devdata->ap_num; eint_num += 32) {
+       for (eint_num = 0;
+            eint_num < pctl->devdata->ap_num;
+            eint_num += 32, reg += 4) {
                status = readl(reg);
-               reg += 4;
                while (status) {
                        offset = __ffs(status);
                        index = eint_num + offset;