ramips: gpio-mt7621 was not handling irqs above 31 properly
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 20 Oct 2015 07:10:05 +0000 (07:10 +0000)
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 20 Oct 2015 07:10:05 +0000 (07:10 +0000)
Signed-off-by: John Crispin <blogic@openwrt.org>
Backport of r47238

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@47239 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/ramips/patches-3.18/0048-GPIO-ralink-add-mt7621-gpio-controller.patch

index 5d5f99e..cb58e16 100644 (file)
@@ -250,7 +250,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
 +              pending = mtk_gpio_r32(rg, GPIO_REG_STAT);
 +
 +              for_each_set_bit(bit, &pending, MTK_BANK_WIDTH) {
-+                      u32 map = irq_find_mapping(mediatek_gpio_irq_domain, bit);
++                      u32 map = irq_find_mapping(mediatek_gpio_irq_domain, (MTK_BANK_WIDTH * i) + bit);
 +
 +                      generic_handle_irq(map);
 +                      mtk_gpio_w32(rg, GPIO_REG_STAT, BIT(bit));