regulator: core: Replace direct ops->enable usage
authorMarkus Pargmann <mpa@pengutronix.de>
Thu, 20 Feb 2014 16:36:03 +0000 (17:36 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 24 Mar 2014 04:38:14 +0000 (21:38 -0700)
commit783d444c6dbca17d2b15918ef6b30add2ba586b8
treec13a86f3445c9638ab4f339a094850c52ce169b3
parentf5a82d2f4c8c46d753a739679d905191ca23c443
regulator: core: Replace direct ops->enable usage

commit 30c219710358c5cca2f8bd2e9e547c6aadf7cf8b upstream.

There are some direct ops->enable in the regulator core driver. This is
a potential issue as the function _regulator_do_enable() handles gpio
regulators and the normal ops->enable calls. These gpio regulators are
simply ignored when ops->enable is called directly.

One possible bug is that boot-on and always-on gpio regulators are not
enabled on registration.

This patch replaces all ops->enable calls by _regulator_do_enable.

[Handle missing enable operations -- broonie]

Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/regulator/core.c