diff options
author | Christoph Niedermaier <cniedermaier@dh-electronics.com> | 2023-07-13 11:03:28 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2023-07-13 17:35:06 +0100 |
commit | 497897cb200d03b89524e6b4dfb71c77af324766 (patch) | |
tree | 9343c1fe057d58bf8c6e8a95dff3da87de8a2976 | |
parent | 933448e8d02be1fc3a63cd3fdcc01c87ce316fd3 (diff) | |
download | linux-stable-497897cb200d03b89524e6b4dfb71c77af324766.tar.gz linux-stable-497897cb200d03b89524e6b4dfb71c77af324766.tar.bz2 linux-stable-497897cb200d03b89524e6b4dfb71c77af324766.zip |
regulator: da9062: Make the use of IRQ optional
This patch makes the use of IRQ optional to make the DA9061/62 usable
for designs that don't have the IRQ pin connected, because the regulator
is usable without IRQ.
Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Reviewed-by: Adam Ward <DLG-Adam.Ward.opensource@dm.renesas.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Link: https://lore.kernel.org/r/20230713090328.3879-1-cniedermaier@dh-electronics.com
Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r-- | drivers/regulator/da9062-regulator.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/regulator/da9062-regulator.c b/drivers/regulator/da9062-regulator.c index c28b061eef02..1d354db0c1bd 100644 --- a/drivers/regulator/da9062-regulator.c +++ b/drivers/regulator/da9062-regulator.c @@ -924,7 +924,7 @@ static int da9062_regulator_probe(struct platform_device *pdev) struct da9062_regulator *regl; struct regulator_config config = { }; const struct da9062_regulator_info *rinfo; - int irq, n, ret; + int n, ret; int max_regulators; switch (chip->chip_type) { @@ -1012,12 +1012,11 @@ static int da9062_regulator_probe(struct platform_device *pdev) } /* LDOs overcurrent event support */ - irq = platform_get_irq_byname(pdev, "LDO_LIM"); - if (irq < 0) - return irq; - regulators->irq_ldo_lim = irq; + regulators->irq_ldo_lim = platform_get_irq_byname_optional(pdev, "LDO_LIM"); + if (regulators->irq_ldo_lim < 0) + return 0; - ret = devm_request_threaded_irq(&pdev->dev, irq, + ret = devm_request_threaded_irq(&pdev->dev, regulators->irq_ldo_lim, NULL, da9062_ldo_lim_event, IRQF_TRIGGER_LOW | IRQF_ONESHOT, "LDO_LIM", regulators); |