linux/drivers/regulator
Jon Hunter c438b9d017 regulator: core: Move registration of regulator device
The public functions to acquire a regulator, such as regulator_get(),
internally look-up the regulator from the list of regulators that have
been registered with the regulator device class. The registration of
a new regulator with the regulator device class happens before the
regulator has been completely setup. Therefore, it is possible that
the regulator could be acquired before it has been setup successfully.
To avoid this move the device registration of the regulator to the end
of the regulator setup and update the error exit path accordingly.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2016-04-22 11:38:47 +01:00
..
88pm800.c Merge branch 'fix/88pm800' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator into regulator-88pm800 2015-07-17 12:42:48 +01:00
88pm8607.c
aat2870-regulator.c
ab3100.c
ab8500-ext.c
ab8500.c
act8865-regulator.c regulator: act8865: Specify fixed voltage of 3.3V for ACT8600's REG9 2016-02-29 20:33:46 +09:00
act8945a-regulator.c regulator: act8945a: add regulator driver for ACT8945A 2016-02-05 18:18:47 +00:00
ad5398.c regulator: ad5398: Fix return value of ad5398_write_reg 2016-02-20 01:02:34 +09:00
anatop-regulator.c Merge remote-tracking branches 'regulator/topic/act8865', 'regulator/topic/anatop', 'regulator/topic/arizona', 'regulator/topic/axp20x' and 'regulator/topic/bcm590xx' into regulator-next 2015-11-04 11:19:37 +00:00
arizona-ldo1.c regulator: arizona-ldo1: Fix handling of GPIO 0 2015-10-16 15:48:39 +01:00
arizona-micsupp.c
as3711-regulator.c
as3722-regulator.c
axp20x-regulator.c - New Drivers 2016-03-18 10:15:11 -07:00
bcm590xx-regulator.c regulator: bcm590xx: Remove unneeded semicolon 2015-09-14 19:48:34 +01:00
core.c regulator: core: Move registration of regulator device 2016-04-22 11:38:47 +01:00
da903x.c regulator: da9*: constify regulator_ops structures 2015-12-22 23:59:57 +00:00
da9052-regulator.c regulator: da9*: constify regulator_ops structures 2015-12-22 23:59:57 +00:00
da9055-regulator.c regulator: da9*: constify regulator_ops structures 2015-12-22 23:59:57 +00:00
da9062-regulator.c regulator: da9*: constify regulator_ops structures 2015-12-22 23:59:57 +00:00
da9063-regulator.c regulator: da9*: constify regulator_ops structures 2015-12-22 23:59:57 +00:00
da9210-regulator.c Merge remote-tracking branches 'regulator/fix/ad5398', 'regulator/fix/da9210', 'regulator/fix/max77802' and 'regulator/fix/pv88090' into regulator-linus 2016-03-13 15:19:09 +07:00
da9210-regulator.h
da9211-regulator.c regulator: da9*: constify regulator_ops structures 2015-12-22 23:59:57 +00:00
da9211-regulator.h regulator: da9211: support da9215 2015-07-13 19:11:24 +01:00
db8500-prcmu.c
dbx500-prcmu.c
dbx500-prcmu.h
devres.c regulator: Make bulk API support optional supplies 2015-11-17 18:54:07 +00:00
dummy.c
dummy.h
fan53555.c regulator: fan53555: fill set_suspend_enable/disable callback 2016-01-15 18:08:20 +00:00
fixed-helper.c
fixed.c
gpio-regulator.c regulator: gpio: don't print error on EPROBE_DEFER 2016-02-21 02:09:34 +09:00
helpers.c regulator: helper: Add helper to configure active-discharge using regmap 2016-03-02 23:13:05 +09:00
hi655x-regulator.c regulator: hi655x: enable regulator for hi655x PMIC 2016-02-15 19:54:55 +00:00
hi6421-regulator.c
internal.h
isl6271a-regulator.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
isl9305.c Merge remote-tracking branches 'regulator/topic/mt6311', 'regulator/topic/ocp', 'regulator/topic/owner', 'regulator/topic/pfuze100' and 'regulator/topic/pwm' into regulator-next 2015-08-30 14:39:48 +01:00
Kconfig This is the bulk of GPIO changes for kernel v4.6: 2016-03-17 21:05:32 -07:00
lm363x-regulator.c regulator: lm363x: Staticise ldo_cont_enable_time 2015-11-30 11:32:52 +00:00
lp872x.c regulator: lp872x: Add enable GPIO pin support 2016-02-05 18:57:09 +00:00
lp3971.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
lp3972.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
lp8755.c
lp8788-buck.c regulator: lp8788: constify regulator_ops structures 2015-12-23 00:01:23 +00:00
lp8788-ldo.c regulator: lp8788: constify regulator_ops structures 2015-12-23 00:01:23 +00:00
ltc3589.c regulator: ltc3589: Make IRQ optional 2016-02-12 22:35:00 +00:00
Makefile Merge remote-tracking branches 'regulator/topic/s5m8767' and 'regulator/topic/vexpress' into regulator-next 2016-03-13 15:20:14 +07:00
max1586.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
max8649.c
max8660.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
max8907-regulator.c
max8925-regulator.c
max8952.c
max8973-regulator.c Merge remote-tracking branches 'regulator/topic/mt6311', 'regulator/topic/ocp', 'regulator/topic/owner', 'regulator/topic/pfuze100' and 'regulator/topic/pwm' into regulator-next 2015-08-30 14:39:48 +01:00
max8997.c
max8998.c
max14577.c
max77620-regulator.c regulator: max77620: Add support to configure active-discharge 2016-03-02 23:31:45 +09:00
max77686-regulator.c regulator: Rename files for max77686 and max77802 drivers 2016-02-12 12:15:51 +00:00
max77693.c regulators: max77693: register driver earlier to avoid deferred probe 2015-08-21 09:07:45 -07:00
max77802-regulator.c regulator: Rename files for max77686 and max77802 drivers 2016-02-12 12:15:51 +00:00
mc13xxx-regulator-core.c
mc13xxx.h
mc13783-regulator.c
mc13892-regulator.c
mt6311-regulator.c regulator: mt6311: Use REGCACHE_RBTREE 2015-12-18 12:14:27 +00:00
mt6311-regulator.h regulator: mt6311: Add support for mt6311 regulator 2015-07-24 12:30:49 +01:00
mt6397-regulator.c regulator: mt6397: Add OF match table 2016-01-27 15:29:07 +00:00
of_regulator.c Merge remote-tracking branches 'regulator/topic/mt6397', 'regulator/topic/of', 'regulator/topic/pv88060', 'regulator/topic/pwm' and 'regulator/topic/s2mps11' into regulator-next 2016-03-13 15:20:00 +07:00
palmas-regulator.c regulator: tps65917/palmas: Add bypass ops for LDOs with bypass capability 2015-12-16 19:22:42 +00:00
pbias-regulator.c Merge remote-tracking branches 'regulator/fix/anatop', 'regulator/fix/gpio', 'regulator/fix/pbias', 'regulator/fix/tpx65218' and 'regulator/fix/vexpress' into regulator-linus 2015-09-21 14:16:09 -07:00
pcap-regulator.c
pcf50633-regulator.c
pfuze100-regulator.c Merge remote-tracking branches 'regulator/topic/mt6311', 'regulator/topic/ocp', 'regulator/topic/owner', 'regulator/topic/pfuze100' and 'regulator/topic/pwm' into regulator-next 2015-08-30 14:39:48 +01:00
pv88060-regulator.c regulator: pv88060: fix incorrect clear of event register 2016-03-08 14:17:54 +07:00
pv88060-regulator.h regulator: pv88060: new regulator driver 2015-11-20 18:06:15 +00:00
pv88090-regulator.c regulator: pv88090: fix incorrect clear of event register 2016-03-07 14:39:03 +07:00
pv88090-regulator.h regulator: pv88090: new regulator driver 2015-12-08 18:21:06 +00:00
pwm-regulator.c regulator: pwm: Add support to have multiple instance of pwm regulator 2016-03-12 13:07:13 +07:00
qcom_rpm-regulator.c
qcom_smd-regulator.c regulator: qcom-smd: Add support for PMA8084 2015-12-16 12:29:54 +00:00
qcom_spmi-regulator.c regulator: qcom-spmi: Add vendor specific configuration 2015-07-24 18:29:45 +01:00
rc5t583-regulator.c
rk808-regulator.c regulator: rk808: make better use of the gpiod API 2015-07-21 17:11:30 +01:00
rn5t618-regulator.c
rt5033-regulator.c
s2mpa01.c
s2mps11.c regulator: s2mps11: Use local variable for number of regulators 2016-02-20 01:07:40 +09:00
s5m8767.c regulator: s5m8767: fix get_register() error handling 2016-02-16 17:08:59 +00:00
sky81452-regulator.c
stw481x-vmmc.c
ti-abb-regulator.c
tps6105x-regulator.c regulator: tps6105x: Convert to use regmap helper functions 2015-11-18 13:19:47 +00:00
tps6507x-regulator.c
tps6524x-regulator.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
tps6586x-regulator.c regulator: tps6586x: silence pointer-to-int-cast 2015-07-23 15:58:33 +01:00
tps51632-regulator.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
tps62360-regulator.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
tps65023-regulator.c regulator: tps65023: add device tree support 2015-09-21 10:13:17 -07:00
tps65086-regulator.c regulator: tps65086: Update regulator driver for the TPS65086 PMIC 2015-12-01 19:58:58 +00:00
tps65090-regulator.c
tps65217-regulator.c
tps65218-regulator.c regulator: tps65218: add support for LS3 current regulator 2015-11-25 12:25:26 +00:00
tps65910-regulator.c
tps65912-regulator.c regulator: tps65912: Add regulator driver for the TPS65912 PMIC 2016-02-11 16:31:06 +00:00
tps80031-regulator.c
twl-regulator.c
userspace-consumer.c
vexpress-regulator.c regulator: vexpress: rename vexpress regulator implementation 2016-02-15 21:01:52 +00:00
virtual.c
wm831x-dcdc.c Merge remote-tracking branch 'regulator/topic/wm831x' into regulator-next 2016-01-12 18:26:12 +00:00
wm831x-isink.c regulator: wm8*: constify regulator_ops structures 2015-12-23 00:00:00 +00:00
wm831x-ldo.c Merge remote-tracking branch 'regulator/topic/wm831x' into regulator-next 2016-01-12 18:26:12 +00:00
wm8350-regulator.c regulator: wm8*: constify regulator_ops structures 2015-12-23 00:00:00 +00:00
wm8400-regulator.c regulator: wm8*: constify regulator_ops structures 2015-12-23 00:00:00 +00:00
wm8994-regulator.c regulator: wm8*: constify regulator_ops structures 2015-12-23 00:00:00 +00:00