]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
regulator: pf9453: Respect IRQ trigger settings from firmware
authorFranz Schnyder <franz.schnyder@toradex.com>
Wed, 18 Feb 2026 10:25:14 +0000 (11:25 +0100)
committerMark Brown <broonie@kernel.org>
Mon, 2 Mar 2026 14:46:28 +0000 (14:46 +0000)
The datasheet specifies, that the IRQ_B pin is pulled low when any
unmasked interrupt bit status is changed, and it is released high once
the application processor reads the INT1 register. As it specifies a
level-low behavior, it should not force a falling-edge interrupt.

Remove the IRQF_TRIGGER_FALLING to not force the falling-edge interrupt
and instead rely on the flag from the device tree.

Fixes: 0959b6706325 ("regulator: pf9453: add PMIC PF9453 support")
Cc: stable@vger.kernel.org
Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
Link: https://patch.msgid.link/20260218102518.238943-2-fra.schnyder@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/pf9453-regulator.c

index 779a6fdb0574bff454e51a862c6995ca216b3810..eed3055d1c1cadb34a38dace8b3b3ec757fbaf11 100644 (file)
@@ -809,7 +809,7 @@ static int pf9453_i2c_probe(struct i2c_client *i2c)
        }
 
        ret = devm_request_threaded_irq(pf9453->dev, pf9453->irq, NULL, pf9453_irq_handler,
-                                       (IRQF_TRIGGER_FALLING | IRQF_ONESHOT),
+                                       IRQF_ONESHOT,
                                        "pf9453-irq", pf9453);
        if (ret)
                return dev_err_probe(pf9453->dev, ret, "Failed to request IRQ: %d\n", pf9453->irq);