summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Lee <steven_lee@aspeedtech.com>2021-12-14 07:02:38 +0300
committerBartosz Golaszewski <brgl@bgdev.pl>2022-01-03 12:50:12 +0300
commite5a7431f5a2d6dcff7d516ee9d178a3254b17b87 (patch)
tree304bf0f03399622a453c459453d6734f96bacf46
parentc9e6606c7fe92b50a02ce51dda82586ebdf99b48 (diff)
downloadlinux-e5a7431f5a2d6dcff7d516ee9d178a3254b17b87.tar.xz
gpio: gpio-aspeed-sgpio: Fix wrong hwirq base in irq handler
Each aspeed sgpio bank has 64 gpio pins(32 input pins and 32 output pins). The hwirq base for each sgpio bank should be multiples of 64 rather than multiples of 32. Signed-off-by: Steven Lee <steven_lee@aspeedtech.com> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
-rw-r--r--drivers/gpio/gpio-aspeed-sgpio.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpio/gpio-aspeed-sgpio.c b/drivers/gpio/gpio-aspeed-sgpio.c
index 3d6ef37a7702..b3a9b8488f11 100644
--- a/drivers/gpio/gpio-aspeed-sgpio.c
+++ b/drivers/gpio/gpio-aspeed-sgpio.c
@@ -395,7 +395,7 @@ static void aspeed_sgpio_irq_handler(struct irq_desc *desc)
reg = ioread32(bank_reg(data, bank, reg_irq_status));
for_each_set_bit(p, &reg, 32)
- generic_handle_domain_irq(gc->irq.domain, i * 32 + p * 2);
+ generic_handle_domain_irq(gc->irq.domain, (i * 32 + p) * 2);
}
chained_irq_exit(ic, desc);