]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
irqchip/meson-gpio: Use the correct register in meson_s4_gpio_irq_set_type()
authorXianwei Zhao <xianwei.zhao@amlogic.com>
Fri, 8 May 2026 07:36:54 +0000 (07:36 +0000)
committerThomas Gleixner <tglx@kernel.org>
Mon, 11 May 2026 13:22:48 +0000 (15:22 +0200)
meson_s4_gpio_irq_set_type() uses the both-edge trigger register for
configuring level type and single edge mode interrupts, which is not
correct.

Use REG_EDGE_POL instead.

Fixes: bbd6fcc76b39 ("irqchip: Add support for Amlogic A4 and A5 SoCs")
Signed-off-by: Xianwei Zhao <xianwei.zhao@amlogic.com>
Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/20260508-a9-gpio-irqchip-v1-1-9dc5f3e022e0@amlogic.com
drivers/irqchip/irq-meson-gpio.c

index f722e9c57e2e40a5fb0b0e2c82256a2e23c588d5..74a376ef452e2133319be09cb1b992c502b1e101 100644 (file)
@@ -415,8 +415,7 @@ static int meson_s4_gpio_irq_set_type(struct meson_gpio_irq_controller *ctl,
        if (type & (IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING))
                val |= BIT(ctl->params->edge_single_offset + idx);
 
-       meson_gpio_irq_update_bits(ctl, params->edge_pol_reg,
-                                  BIT(idx) | BIT(12 + idx), val);
+       meson_gpio_irq_update_bits(ctl, REG_EDGE_POL, BIT(idx) | BIT(12 + idx), val);
        return 0;
 };