Commit b98dbd82 authored by Jeffy Chen's avatar Jeffy Chen Committed by Bartosz Golaszewski

gpio/rockchip: Convert to generic_handle_domain_irq()

Follow commit dbd1c54f ("gpio: Bulk conversion to
generic_handle_domain_irq()").
Signed-off-by: default avatarJeffy Chen <jeffy.chen@rock-chips.com>
Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Signed-off-by: default avatarBartosz Golaszewski <brgl@bgdev.pl>
parent 66df18b3
...@@ -325,26 +325,15 @@ static void rockchip_irq_demux(struct irq_desc *desc) ...@@ -325,26 +325,15 @@ static void rockchip_irq_demux(struct irq_desc *desc)
{ {
struct irq_chip *chip = irq_desc_get_chip(desc); struct irq_chip *chip = irq_desc_get_chip(desc);
struct rockchip_pin_bank *bank = irq_desc_get_handler_data(desc); struct rockchip_pin_bank *bank = irq_desc_get_handler_data(desc);
u32 pend; unsigned long pending;
unsigned int irq;
dev_dbg(bank->dev, "got irq for bank %s\n", bank->name); dev_dbg(bank->dev, "got irq for bank %s\n", bank->name);
chained_irq_enter(chip, desc); chained_irq_enter(chip, desc);
pend = readl_relaxed(bank->reg_base + bank->gpio_regs->int_status); pending = readl_relaxed(bank->reg_base + bank->gpio_regs->int_status);
for_each_set_bit(irq, &pending, 32) {
while (pend) {
unsigned int irq, virq;
irq = __ffs(pend);
pend &= ~BIT(irq);
virq = irq_find_mapping(bank->domain, irq);
if (!virq) {
dev_err(bank->dev, "unmapped irq %d\n", irq);
continue;
}
dev_dbg(bank->dev, "handling irq %d\n", irq); dev_dbg(bank->dev, "handling irq %d\n", irq);
/* /*
...@@ -378,7 +367,7 @@ static void rockchip_irq_demux(struct irq_desc *desc) ...@@ -378,7 +367,7 @@ static void rockchip_irq_demux(struct irq_desc *desc)
} while ((data & BIT(irq)) != (data_old & BIT(irq))); } while ((data & BIT(irq)) != (data_old & BIT(irq)));
} }
generic_handle_irq(virq); generic_handle_domain_irq(bank->domain, irq);
} }
chained_irq_exit(chip, desc); chained_irq_exit(chip, desc);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment