diff options
Diffstat (limited to 'arch/arm/mach-mmp/irq.c')
-rw-r--r-- | arch/arm/mach-mmp/irq.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/arm/mach-mmp/irq.c b/arch/arm/mach-mmp/irq.c index e60c7d98922b..3c71246cd994 100644 --- a/arch/arm/mach-mmp/irq.c +++ b/arch/arm/mach-mmp/irq.c | |||
@@ -153,10 +153,8 @@ static void icu_mux_irq_demux(unsigned int irq, struct irq_desc *desc) | |||
153 | status = readl_relaxed(data->reg_status) & ~mask; | 153 | status = readl_relaxed(data->reg_status) & ~mask; |
154 | if (status == 0) | 154 | if (status == 0) |
155 | break; | 155 | break; |
156 | n = find_first_bit(&status, BITS_PER_LONG); | 156 | for_each_set_bit(n, &status, BITS_PER_LONG) { |
157 | while (n < BITS_PER_LONG) { | ||
158 | generic_handle_irq(icu_data[i].virq_base + n); | 157 | generic_handle_irq(icu_data[i].virq_base + n); |
159 | n = find_next_bit(&status, BITS_PER_LONG, n + 1); | ||
160 | } | 158 | } |
161 | } | 159 | } |
162 | } | 160 | } |