gpio: realtek-otto: fix GPIO line IRQ offset
[ Upstream commit585a070799
] The irqchip uses one domain for all GPIO lines, so the line offset should be determined w.r.t. the first line of the first port, not the first line of the triggered port. Fixes:0d82fb1127
("gpio: Add Realtek Otto GPIO support") Signed-off-by: Sander Vanheule <sander@svanheule.net> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Родитель
01e189372d
Коммит
db651ace49
|
@ -205,7 +205,7 @@ static void realtek_gpio_irq_handler(struct irq_desc *desc)
|
|||
status = realtek_gpio_read_isr(ctrl, lines_done / 8);
|
||||
port_pin_count = min(gc->ngpio - lines_done, 8U);
|
||||
for_each_set_bit(offset, &status, port_pin_count)
|
||||
generic_handle_domain_irq(gc->irq.domain, offset);
|
||||
generic_handle_domain_irq(gc->irq.domain, offset + lines_done);
|
||||
}
|
||||
|
||||
chained_irq_exit(irq_chip, desc);
|
||||
|
|
Загрузка…
Ссылка в новой задаче