diff options
author | Michał Mirosław <mirq-linux@rere.qmqm.pl> | 2020-08-10 06:33:32 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-09-07 18:35:25 +0100 |
commit | e9c142b0d2c08178a9e146d47d8fe397373bda3e (patch) | |
tree | 02f3ef2859f7d0e6cae992c3c340f6ce636c897a /drivers/regulator/ltc3589.c | |
parent | 3bca239d6184df61a619d78764e0481242d844b4 (diff) | |
download | linux-e9c142b0d2c08178a9e146d47d8fe397373bda3e.tar.gz linux-e9c142b0d2c08178a9e146d47d8fe397373bda3e.tar.bz2 linux-e9c142b0d2c08178a9e146d47d8fe397373bda3e.zip |
regulator: remove locking around regulator_notifier_call_chain()
regulator_notifier_call_chain() doesn't need rdev lock and rdev's
existence is assumed in the code anyway. Remove the locks from drivers.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Acked-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Link: https://lore.kernel.org/r/42393f66dcc4d80dcd9797be45216b4035aa96cb.1597032945.git.mirq-linux@rere.qmqm.pl
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/regulator/ltc3589.c')
-rw-r--r-- | drivers/regulator/ltc3589.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/regulator/ltc3589.c b/drivers/regulator/ltc3589.c index fa563aacf742..38f7ccb63b52 100644 --- a/drivers/regulator/ltc3589.c +++ b/drivers/regulator/ltc3589.c @@ -357,22 +357,16 @@ static irqreturn_t ltc3589_isr(int irq, void *dev_id) if (irqstat & LTC3589_IRQSTAT_THERMAL_WARN) { event = REGULATOR_EVENT_OVER_TEMP; - for (i = 0; i < LTC3589_NUM_REGULATORS; i++) { - regulator_lock(ltc3589->regulators[i]); + for (i = 0; i < LTC3589_NUM_REGULATORS; i++) regulator_notifier_call_chain(ltc3589->regulators[i], event, NULL); - regulator_unlock(ltc3589->regulators[i]); - } } if (irqstat & LTC3589_IRQSTAT_UNDERVOLT_WARN) { event = REGULATOR_EVENT_UNDER_VOLTAGE; - for (i = 0; i < LTC3589_NUM_REGULATORS; i++) { - regulator_lock(ltc3589->regulators[i]); + for (i = 0; i < LTC3589_NUM_REGULATORS; i++) regulator_notifier_call_chain(ltc3589->regulators[i], event, NULL); - regulator_unlock(ltc3589->regulators[i]); - } } /* Clear warning condition */ |